层次聚类—SPSS软件的上机实践应用(PDF下载见附件)
层次聚类.pdf
(456.87 KB, 下载次数: 14)
data18-1.sav
(2.49 KB, 下载次数: 2)
一、实验目的:
1. 准备理解层次聚类分析及层次聚类的方法原理。
2. 掌握定距型数据分类时样品之间距离和变量之间相似性的计算方法。
3. 了解掌握七种层次聚类方法的区别与联系。
4. 熟练掌握层次聚类分析的SPSS操作。
5. 培养运用层次聚类方法解决身边实际问题的能力。
二、准备知识:
1.聚类分析及层次聚类的基本思想
聚类分析是定量研究分类问题的一种多元统计方法。所谓类,通俗地说,就是指相似元素的集合。聚类分析能够将样品或变量根据其诸多特征,按照性质上的亲疏程度进行自动分类,产生多个分类结果。类内部个体特征具有相似性,不同类间个体特征的差异性较大。对样品分类称为Q-型聚类分析,对变量分类称为R-型聚类分析。聚类分析内容非常丰富,有层次聚类、K-Means聚类、有序样品聚类、模糊聚类、图论聚类、聚类预报等。其中,层次聚类是聚类分析中应用最广泛的一种方法。
2.定距型数据分类的距离和相似性计算
为了将样品或变量进行分类,需要研究样品之间的关系。用得多的方法有两种:一种方法是用相似系数,性质越接近的样品,相似系数的绝对值越接近1,而彼此无关的样品,相似系数的绝对值接近于0.相似的样品归为一类,不相似的样品为不同的类。另一种方法是将一个样品看作p维空间的一个点,并在空间中定义距离,距离较近的点归为一类,距离较远的点归为不同的类。
3.几种层次聚类方法
(1)最短距离法
(2)最长距离法
(3)重心距离法
(4)中位数距离法
(5)类间平均距离法
(6)类内平均距离法
(7)离差平方和法
4.层次聚类的基本步骤
虽然计算距离和相似系数的公式很多,并有7种不同的层次聚类方法,但在SPSS中,层次聚类分析的步骤是一致的。
(1)选择分析变量。 (2)数据标准化,目的是消除各变量间由于量纲不同或数量级单位不同导致距离或相似 系数的计算结果有一定的偏差,难以放在一起比较的问题。 (3)选择距离或相似系数的计算公式,计算所有样品两两之间的距离或相似系数,生成 距离矩阵或相似矩阵。 (4)选择聚类方法,将距离最近的两个样品合并成一类。常用的聚类方法是最短距离法、最长距离法、中心距离法、离差平方和法。
(5)如果类的个数大于1,则继续(3)~(4)步骤,直至所有的样品归为一类为止。
(6)输出聚类结果和系统聚类图,包括树形图和冰柱图两种。
(7)根据研究对象的背景知识,按某种分类标准或分类原则,得出最终的分类结果。
在数据分析中,如将层次方法与动态聚类法、判别分析法、主成分分析法、回归分析法等联合在一起使用往往效果会更好。
三、实验内容:
本实验要求利用2001年全国31个省市自治区各类小康和现代化指数的数据(参见数据“data18-1.sav”),对地区进行聚类分析。此数据集中包括省市(dq)、综合指数(x1)、社会结构(x2)、经济与技术发展(x3)、人口素质(x4)、生活质量(x5)、法制与治安(x6)7个变量的31个观测。其中,社会结构(x2)是由第三产业从业人员比重等5项指标综合得出的统计指数,反映了社会化、城市化、非农化、外向型经济和智力投资等方面内容;经济与技术发展(x3)是由人均GDP等7项指标综合得出的统计指数,反映了综合经济的投入产出、就业率、知识创新投入和发明创造能力等方面内容;人口素质(x4)是由人口自然增长率、专业技术人员等6项指标综合得出的统计指数;生活质量(x5)是由恩格尔系数等6项指标综合得出的统计指数,反映了生活现代化和电气化等方面情况;法制与治安(x6)是由刑事案件、治安案件、律师数和交通事故死亡率4项指标综合得出的统计指数,是个逆向指标。
四、实验步骤:
1、打开数据集“data18-1.sav”,选择菜单:【分析】→【分类】→【系统聚类】,弹出如图1所示的“系统聚类分析”对话框。
图1 系统聚类分析主对话框
2、在此对话框中的“聚类”框下选择聚类类型。 (1)选择“变量”项,进行变量R-型聚类。
(2)选择“个案”项,进行样品Q-型聚类。本实验可选择“Cases”项,进行Q型聚类。
(3)选择省市[dq],进入“标注个案”框中;选择综合指数[x1]、社会结构[x2]、经济与技术发展[x3]、人口素质[x4]、生活质量[x5]和法制与治安[x6],进入“变量”框中。
(4)单击“方法”按钮,弹出如图2所示的对话框。在“聚类方法”下拉框中选择“组间联接”。“度量标准”框中给出的是不同数据类型下的样品距离的计算方式,在“区间”下拉框中选择“平方Euclidean距离”。“计数”和“二分类”选项分别适用于计数型数据和二值数据。由于本实验中的数据不存在数量级上的差异,因此无需进行标准化处理。在“标准化”下拉框中选择“无”。单击“继续”按钮返回主对话框。
图2 方法选择对话框
(5)单击“统计”按钮,弹出如图3所示的选择输出统计量的对话框。在此对话框中选择“合并进程表”复选项,作出凝聚状态表。凝聚状态表显示聚类过程中每一步合并的两项(观测量与观测量、观测量与类、类与类)、被合并的两项之间的距离以及观测量或变量加入到一类的类水平,因此可以根据此表跟踪聚类的合并过程。选择“相似性矩阵”复选项,要求输出各项间的距离矩阵。以矩阵形式给出各项之间的距离或相似性测度值。在“聚类成员”框中选择“方案范围”,输入聚类解的范围从3类到6类。单击“继续”按钮返回主对话框。
图3 选择输出统计量的对话框
(6)单击“绘制”按钮,弹出如图4所示的选择统计图表的对话框。选择“树状图”要求输出树形图。在“冰柱”框下选择“无”,不要求输出。单击“继续”按钮返回主对话框。
图4 选择统计图表的对话框
(7)单击“保存”按钮,弹出如图5所示的新变量选择对话框。选择“方案范围”,输入聚类解的范围从3类到6类。
图5 新变量选择对话框
(8)点击【继续】→【确定】,系统输出层次聚类分析结果。
五、结果输出:
表1 层次聚类分析中凝聚状态表 聚类表 | 阶 | 群集组合 | 系数 | 首次出现阶群集 | 下一阶 | 群集 1 | 群集 2 | 群集 1 | 群集 2 | 1 | 26 | 28 | 39.470 | 0 | 0 | 7 | 2 | 1 | 2 | 49.780 | 0 | 0 | 18 | 3 | 12 | 13 | 72.980 | 0 | 0 | 6 | 4 | 24 | 27 | 73.190 | 0 | 0 | 9 | 5 | 19 | 21 | 85.290 | 0 | 0 | 16 | 6 | 12 | 18 | 87.210 | 3 | 0 | 12 | 7 | 26 | 30 | 153.585 | 1 | 0 | 15 | 8 | 15 | 17 | 156.130 | 0 | 0 | 12 | 9 | 24 | 29 | 158.715 | 4 | 0 | 13 | 10 | 10 | 11 | 167.790 | 0 | 0 | 14 | 11 | 4 | 5 | 167.860 | 0 | 0 | 23 | 12 | 12 | 15 | 181.298 | 6 | 8 | 16 | 13 | 24 | 25 | 207.787 | 9 | 0 | 19 | 14 | 10 | 23 | 269.735 | 10 | 0 | 24 | 15 | 20 | 26 | 273.293 | 0 | 7 | 19 | 16 | 12 | 19 | 274.099 | 12 | 5 | 20 | 17 | 6 | 9 | 295.240 | 0 | 0 | 22 | 18 | 1 | 3 | 306.430 | 2 | 0 | 29 | 19 | 20 | 24 | 378.826 | 15 | 13 | 21 | 20 | 12 | 14 | 404.797 | 16 | 0 | 24 | 21 | 20 | 22 | 464.552 | 19 | 0 | 25 | 22 | 6 | 7 | 469.490 | 17 | 0 | 27 | 23 | 4 | 8 | 481.670 | 11 | 0 | 27 | 24 | 10 | 12 | 610.921 | 14 | 20 | 26 | 25 | 20 | 31 | 785.312 | 21 | 0 | 26 | 26 | 10 | 20 | 934.567 | 24 | 25 | 28 | 27 | 4 | 6 | 986.264 | 23 | 22 | 29 | 28 | 10 | 16 | 1077.380 | 26 | 0 | 30 | 29 | 1 | 4 | 2245.440 | 18 | 27 | 30 | 30 | 1 | 10 | 4506.698 | 29 | 28 | 0 |
表2 层次聚类分析中的类成员 群集成员 | 案例 | 6 群集 | 5 群集 | 4 群集 | 3 群集 | 1:北京 | 1 | 1 | 1 | 1 | 2:上海 | 1 | 1 | 1 | 1 | 3:天津 | 1 | 1 | 1 | 1 | 4:浙江 | 2 | 2 | 2 | 2 | 5:广东 | 2 | 2 | 2 | 2 | 6:江苏 | 3 | 3 | 2 | 2 | 7:辽宁 | 3 | 3 | 2 | 2 | 8:福建 | 2 | 2 | 2 | 2 | 9:山东 | 3 | 3 | 2 | 2 | 10:黑龙江 | 4 | 4 | 3 | 3 | 11:吉林 | 4 | 4 | 3 | 3 | 12:湖北 | 4 | 4 | 3 | 3 | 13:陕西 | 4 | 4 | 3 | 3 | 14:河北 | 4 | 4 | 3 | 3 | 15:山西 | 4 | 4 | 3 | 3 | 16:海南 | 5 | 5 | 4 | 3 | 17:重庆 | 4 | 4 | 3 | 3 | 18:内蒙古 | 4 | 4 | 3 | 3 | 19:湖南 | 4 | 4 | 3 | 3 | 20:青海 | 6 | 4 | 3 | 3 | 21:四川 | 4 | 4 | 3 | 3 | 22:宁夏 | 6 | 4 | 3 | 3 | 23:新疆 | 4 | 4 | 3 | 3 | 24:安徽 | 6 | 4 | 3 | 3 | 25:云南 | 6 | 4 | 3 | 3 | 26:甘肃 | 6 | 4 | 3 | 3 | 27:广西 | 6 | 4 | 3 | 3 | 28:江西 | 6 | 4 | 3 | 3 | 29:河南 | 6 | 4 | 3 | 3 | 30:贵州 | 6 | 4 | 3 | 3 | 31:西藏 | 6 | 4 | 3 | 3 |
图6 层次聚类分析的树形图 至此,完成了层次聚类分析的操作过程,SPSS将根据用户的选择自动完成聚类分析,并将结果输出到数据编辑窗口或保存到数据编辑窗口中。 总之,层次聚类分析能够得到多个分类解。从层次聚类分析的过程可以看出:层次聚类分析的每一步都要重新计算每个距离。在大样本情况下,层次聚类分析方法对计算机的性能要求比较高,需占用较多的CPU时间和较多的内存,可能会出现等待时间过长等问题。 六、结果分析:
1、图表的解释 (1)凝聚过程 表1为层次聚类法的凝聚过程,第一列表示聚类分析的第几步;第二列、第三列表示本步骤类中哪两个样本或小类聚成一类;第四列是个体距离或小类距离;第五列、第六列表示本步骤类中参与聚类的是个体还是小类,0表示样本,非0表示由第n步聚类生成的小类参与本步聚类;第七列表示在本步聚类的结果将在以下第几步中用到。 从“群集组合”栏中可知,第一阶段,观测值26和28首先被并在一起,在这之前没有任何观测值在聚类中,所以“首次出现阶群集”的“群集1”“群集2”都是0,且一直到第6步时才会与其他观测值(或聚类)合并。在第二阶段,接着是观测值1和2、观测值12和13、观测值24和27、观测值19和21各自合并,依次类推。 (2)、聚类成员 表2显示聚类分为6、5、4、3类时,每个观测值所属的聚类,在此表显示若分为6类时,观测值1、2、3共3个省市,属于聚类1;观测值4、5、8共3个省市,属于聚类2;观测值6、7、9共3个省市,属于聚类3;观测值10、11、12、13、14、15、17、18、19、21、23共11个省市属于聚类4;观测值16,属于聚类5;其他观测值共10个省市属于聚类6。 若分为五类时,聚类4和聚类6合并成一类。若分为四类时,聚类2和聚类3合并成一类。若分为三类时,聚类4、聚类5和聚类6合并为一类。完成了层次聚类分析的操作过程,SPSS用户的选择自动完成聚类分析,并将结果输出到数据编辑窗口或保存到数据编辑窗口中。 (3)、树形图 树形图以躺倒树的形式展现了聚类分析中的每一次类合并的情况,如图6所示。SPSS自动将给类间的距离映射到0~25之间。由图可知,甘肃、江西、贵州的相似性较高,较早聚成了一类;安徽、广西、河南、云南的相似性较高,较早聚成了一类;黑龙江、吉林的相似度较高,较早聚成了一类;湖南、四川的相似度较高,较早聚成了一类;湖北、陕西、内蒙古、山西、重庆的相似度较高,较早聚成了一类;北京、上海的相似性较高,较早聚成了一类;江苏、山东的相似性较高,较早聚成了一类;浙江、广东的相似性较高,较早聚成了一类。 2、聚类结果 运用统计软件SPSS20.0中的层次聚类法对2001年全国31个省市自治区小康和现代化的6项统计指标进行聚类分析,通过SPSS中的输出结果,可以将其分为3、4、5或6类。
若分为六类:
第一类:北京、上海、天津
第二类:浙江、广东、福建
第三类:江苏、辽宁、山东
第四类:黑龙江、吉林、湖北、陕西、河北、山西、重庆、内蒙古、湖南、四川、新疆
第五类:海南
第六类:青海、宁夏、安徽、云南、甘肃、广西、江西、河南、贵州、西藏
若分为五类:
第一类:北京、上海、天津
第二类:浙江、广东、福建
第三类:江苏、辽宁、山东
第四类:黑龙江、吉林、湖北、陕西、河北、山西、重庆、内蒙古、湖南、青海、四川、宁夏、新疆、安徽、云南、甘肃、广西、江西、河南、贵州、西藏
第五类:海南
若分为四类:
第一类:北京、上海、天津
第二类:浙江、广东、福建、江苏、辽宁、山东
第三类:黑龙江、吉林、湖北、陕西、河北、山西、重庆、内蒙古、湖南、青海、四川、宁夏、新疆、安徽、云南、甘肃、广西、江西、河南、贵州、西藏
第四类:海南
若分为三类:
第一类:北京、上海、天津
第二类:浙江、广东、福建、江苏、辽宁、山东
第三类:黑龙江、吉林、湖北、陕西、河北、山西、海南、重庆、内蒙古、湖南、青海、四川、宁夏、新疆、安徽、云南、甘肃、广西、江西、河南、贵州、西藏
|