SAS数据分析之聚类分析

具体的题目我。。。找不到了,但我先把这次SAS的代码放上来,如果我没记错的话,本次实验应该是从国家统计局上搜集了全国各大省份的一些资料,但。。。。忘记具体是什么资料了,这不重要,主要目的就是利用SAS软件对数据做聚类分析,然后我们根据得到的结果来产生我们想要得到的信息。

data a;
input province $ x1 x2 x3 x4@@;
cards;
北京	238372	27376	659.03	115.66
天津	84047	18181	314.66	52.05
河北	138840	155071	762.14	282.6
山西	88125	121958	465.34	158.33
				
辽宁	178270	98147	836.04	179.7
吉林	59503	57870	340.89	115.82
黑龙江	85931	88720	510.59	179.99
				
上海	304322	31395	860.15	93.48
江苏	364330	118086	1519.84	245.79
浙江	312065	119009	1059.39	167.54

;
run;
proc cluster data=a method=ward std
outtree=eco1 pseudo;
id province;
run;

这便是简单聚类的代码,根据需求的不同,大家可以按照需求来使用不同的聚类方法。
SAS数据分析之聚类分析_第1张图片
SAS数据分析之聚类分析_第2张图片
SAS数据分析之聚类分析_第3张图片
以上是我们用的一类聚类方法,下面将给出另一类。

data examp632(type=distance);
   input  x1-x10;
   cards;
0    1.5460    1.6190    1.7754    0.9285    1.8145    1.6432    0.6607    1.5522    1.1759
    1.5460         0    1.4745    1.0386    1.2358    0.4667    0.7056    2.2067    2.9756    2.4932
    1.6190    1.4745         0    0.6057    0.6925    1.2547    0.8486    2.0659    2.2850    1.7694
    1.7754    1.0386    0.6057         0    0.9324    0.7019    0.3331    2.3440    2.7623    2.2396
    0.9285    1.2358    0.6925    0.9324         0    1.2541    0.9282    1.4264    1.8713    1.3541
    1.8145    0.4667    1.2547    0.7019    1.2541         0    0.4062    2.4625    3.1072    2.5986
    1.6432    0.7056    0.8486    0.3331    0.9282    0.4062         0    2.2579    2.7995    2.2815
    0.6607    2.2067    2.0659    2.3440    1.4264    2.4625    2.2579         0    1.0544    0.8796
    1.5522    2.9756    2.2850    2.7623    1.8713    3.1072    2.7995    1.0544         0    0.5228
    1.1759    2.4932    1.7694    2.2396    1.3541    2.5986    2.2815    0.8796    0.5228         0

;
proc print data=examp632;
run;
proc cluster data=examp632 method=ward;
   var x1-x10;
   proc tree horizontal;
   run; 

不再做过多描述,直接把聚类图象放给大家对比
SAS数据分析之聚类分析_第4张图片
对比两种方法,很容易发现两种方法产生的聚类方法并不一致,这并不代表聚类中出现了错误。
在聚类中,我们是按照类与类之间的距离来做聚类的,a与d两类之间的距离最近,则在本轮聚类中,a、d则天然归于一类,但由于类与类间距离的计算方式并不唯一,有欧式距离,也有其他的距离计算方法,这便导致了不同方法聚类中可能出现结论不同的结果,这种情况不用过多在意,选取最适合的方法即可。
写得不好,请各位谅解,有错误之处敬请指正。

你可能感兴趣的:(SAS,聚类分析)