猿问
下载APP

请问R语言哪些包可用来做聚类分析?

R语言哪些包可用来做聚类分析


慕码人2483693
浏览 143回答 5
5回答

慕标5265247

stats包中的hclust()函数进行聚类。系统聚类一般首先使用dist()函数计算欧式距离,再使用hclust()函数展开系统聚类。

慕运维1137616

library(flexclust)数据nutrient可以用来做聚类分析library(NbClust)函数NbClust()选择层次聚类分析聚类的个数library(rattle)数据wine可以做K均值分析library(stats)函数kmeans()进行K均值聚类分析library(cluster)函数pam()进行中心点的划分聚类分析,数据可用用wine

慕莱坞5435954

scale.data(data);library(NbClust);result.data<-NbClust(scale.data,distance="euclidean",min.nc=2,max.nc=4,metheod="average");barplot(table(nc$Best.n[1,]),xlab="Clusters",ylab="Criteria")

呼唤远方

个人觉得不管是分类或聚类算法,出来的结果是一个“规则”。至于要怎么去分类数据,是根据这个“规则” 来做的。所以,提取数据是另外一个工作了。## 更新日期:2015/11/11前段时间在做聚类分析,用到hclust() 函数,将数据聚类分组后,对应到每一个ID。具体如下:d = dist(testdata, method = "euclidean") hcward = hclust(d, method="ward.D") data$groups = cutree(hcward,k=8) # 到这里,data 中的每个ID都对应到相应的group 了

白板的微信

问题1:代码如下#b为新建立的0矩阵,a为原始数据矩阵,读取文件test.txt的数据a<- as.matrix(read.table("test.txt"))b<- matrix(0,nrow=ncol(a),ncol = ncol(a))for(n in i : nrow(a)){for(i in 1 :ncol(a)){if(a[n,i] == 1){for( j in 1 :ncol(a)){if(a[n,j] == 1 && i!= j){b[i,j] = b[i,j]+1}}}}}#结束新矩阵是b问题2:k <- 3 #设定聚类数a<- read.table("test.txt"))#读入数据cl <- hclust(dist(a),method="single") #设定聚类方法memb <- cutree(cl, k=k) #分割聚类数memb是类别标记至于聚类分析图,我不知道什么意思。
打开App,查看更多内容
随时随地看视频慕课网APP
我要回答