如何利用R软件进行聚类分析?

作者:滴水穿石 | 创建时间: 2023-07-13
在统计分析中,经常会用到聚类分析方法,R软件开放的代码设置会很方便的帮我们完成此项工作。这里只介绍操作方法,最长距离法、最短距离法等系统聚类方法的理论知识这里就不阐述了。...
如何利用R软件进行聚类分析?

操作方法

打开R软件,输入数据,生成距离结构。这里设样本数据为1,2,3,7,8,9,15。输入代码:x=c(1,2,3,7,8,9,15);dim(x)=c(7,1);d=dist(x) 其中x是生成向量,dim表示定义向量的维数,dist表示生成距离矩阵。

生成系统聚类。 输入代码: hc1=hclust(d,"single"); hc2=hclust(d,"complete"); hc3=hclust(d,"median"); hc4=hclust(d,"average"); 其中hclust表示系统聚类计算函数,single、complete、median、average分别表示最短距离法、最长距离法、中间距离法、类平均法这四类计算方法。

绘制出聚类图形。利用plot函数绘制出最短距离法计算的聚类图。 代码:plot(hc1)

为了方便比较各聚类方法的效果,可以将不同方法的图绘制在一张图上。 输入代码: opar=par(mfrow=c(2,2)) plot(hc1,hang=-1); plot(hc2,hang=-1); plot(hc3,hang=-1); plot(hc4,hang=-1); par(opar) 其中par为绘图参数函数。mfrow为设置小图数量的参数,mfrow=c(2,2)表示把图按行排列成2×2个小图。 画出的图形见下图。

从图中可以看出聚类的结果为第1,2,3个值为一类,4,5,6个值为一类,第七个值为一类。共分为三类。如果想自动设置分类个数,可以利用函数rect.hclust。 plot(hc1);re=rect.hclust(hc1,k=2)表示将聚类图分为两类。

从图中可以看出,数据组已经自动分类两类。分类结果R软件已在图形中标出。完成。

温馨提示

注意,利用分类个数函数时,要先使用plot函数绘制出图形
点击展开全文

更多推荐