###聚类分析
DXBZ<-c(9.30,4.67,0.96,1.38,1.48,2.60,2.15,2.14,6.53,1.47,1.17,0.88,1.23,0.99,
0.98,0.85,1.57,1.14,1.34,0.79,1.24,0.96,0.78,0.81,0.57,1.67,1.10,1.49,1.61,1.85)
CZBZ<-c(30.55,29.38,24.69,29.24,25.47,32.32,26.31,28.46,31.59,26.43,23.74,
19.97,16.87,18.84,25.18,26.55,23.16,22.57,23.04,19.14,22.53,21.65,14.65,13.85,
3.85,24.36,16.85,17.16,20.27,20.66)
WMBZ<-c(8.70,8.92,15.21,11.30,15.39,8.81,10.49,10.87,11.04,17.23,17.46,24.43,
15.63,16.22,16.87,16.15,15.79,12.10,10.45,10.61,13.97,16.24,24.27,25.44,
44.43,17.62,27.93,27.70,22.06,12.75)
BZ<-data.frame(DXBZ,CZBZ,WMBZ)
name<-c("北京","天津","河北","山西","内蒙古","辽宁","吉林",
"黑龙江","上海","江苏","浙江","安徽","福建","江西",
"山东","河南","湖北","湖南","广东","广西","海南",
"四川","贵州","云南","西藏","陕西","甘肃","青海","宁夏","新疆")
BZ<-data.frame(DXBZ,CZBZ,WMBZ,row.names = name)
BZ.sale<-scale(BZ)##将数据进行归一化处理,消除量纲的影响
BZ.dist<-dist(BZ.sale,method="euclidean") ###对数据使用EUclid距离
BZ.complete<-hclust(BZ.dist,"complete") ###对数据使用最长距离做聚类分析
BZ.averge<-hclust(BZ.dist,"average") ##使用类平均做聚类分析
BZ.centroid<-hclust(BZ.dist,"centroid") ###重心法做聚类分析
BZ.ward<-hclust(BZ.dist,"ward.D") ###Ward法做聚类分析
###在2*2的图中,将已经分出来的系谱图plot,分为四类,分别用绿色框,蓝色框,红色框,灰色框显示
opar<-par(mfrow=c(2,2))
plot(BZ.complete,hang=-1,main="Complete Dendrogram")
re.c<-rect.hclust(BZ.complete,k=4,border = "green")
plot(BZ.averge,hang=-1,k=4,main="Average Dendrogram")
re.a<-rect.hclust(BZ.averge,k=4,border = "blue")
plot(BZ.centroid,hang=-1,main="Centroid Dendrogram")
re.o<-rect.hclust(BZ.centroid,k=4,border = "red")
plot(BZ.ward,hang=-1,main="Ward Dendrogram")
re.w<-rect.hclust(BZ.ward,k=4,border = "grey")
####做动态聚类分析kemeans,迭代20次
BZ.km<-kmeans(BZ.sale,4,nstar=40)##迭代次数nstar,4是要分类的数量
BZ.km