各位,现在手头上有中国22个城市的共计122项指标,现在需要根据这些维度对这22个城市进行聚类分析,我使用mds,代码如下:
shenzhen=read.table("clipboard",header = T)
library(fpc)
min.max.norm <- function(x){
(x-min(x))/(max(x)-min(x))
}
norm.data=as.data.frame(lapply(shenzhen,min.max.norm))
K <- 2:8
round <- 30 # 每次迭代30次,避免局部最优
rst <- sapply(K, function(i){
print(paste("K=",i))
mean(sapply(1:round,function(r){
print(paste("Round",r))
result <- kmeans(norm.data, i)
stats <- cluster.stats(dist(norm.data), result$cluster)
stats$avg.silwidth
}))
})
plot(K,rst,type='l',main='轮廓系数与K的关系', ylab='轮廓系数')
#当k取2时,有最大的轮廓系数
clu <- kmeans(norm.data,2)
mds = cmdscale(dist(norm.data,method="euclidean"))
plot(mds, col=clu$cluster, main='聚类分析', pch = 19,xlab="",ylab="",xaxt="n",yaxt="n")
text(mds[1,1],mds[1,2],"深圳",pos=1)
text(mds[11,1],mds[11,2],"北京",pos=1)
text(mds[12,1],mds[12,2],"上海",pos=1)
text(mds[13,1],mds[13,2],"广州",pos=1)
得到如图所示聚类结果,请问怎么解释这张图的两个坐标轴呢,有实际的经济意义吗?
请问还有其他方法能对这22个城市进行聚类分析吗?
谢谢!!
附件列表