SPSS聚类分析实战:系统聚类与K-均值聚类详解
SPSS聚类分析实战:系统聚类与K-均值聚类详解
聚类分析是数据挖掘和统计分析中的重要方法之一,广泛应用于市场细分、生物分类、图像处理等领域。SPSS(Statistical Package for the Social Sciences)作为一款功能强大的统计分析软件,提供了多种聚类分析方法,包括系统聚类和K-均值聚类。本文将详细介绍这两种聚类方法在SPSS中的实现步骤和应用场景。
系统聚类分析
SPSS中的系统聚类分析功能位于【分析】—【分类】—【系统聚类】菜单中。系统聚类主要有两种类型:
- Q型聚类:对样本进行聚类
- R型聚类:对变量进行聚类
在进行系统聚类分析时,如果参与聚类的变量存在数量级差异,需要在【系统聚类分析】—方法(M)—【系统聚类分析:方法】—【转换值】—【标准化】选项中选择消除数量级差的方法,并指定处理是针对变量还是针对样本。
SPSS提供了多种系统聚类方法,常用的是组间平均链接和组内平均链接。个体距离的计算方式包括Euclidean距离、平方Euclidean距离和Pearson相关性等。
分类数的确定
确定分类数是聚类分析中的关键步骤。以下是两种常用方法:
聚合系数曲线法:以聚合系数为y轴,分类数为x轴,绘制聚合系数随分类数的变化曲线。类似于因子分析中的碎石图,可以在曲线开始变得平缓的点选择合适的分类数。SPSS中通过【图形】—【旧对话框】—【散点/点状】实现。
实用角度选择:从实用角度出发,选择合适的分类数。如果确定分类数,可在SPSS中通过【系统聚类分析】—统计量(S)—【系统聚类分析:统计】—【聚类成员】选项中选择【单一方案】—输入方案数目,或选择【方案范围】。
K-均值聚类分析
K-均值聚类法在SPSS中位于【分析】--【分类】--【K-平均值聚类】菜单。首先需要指定聚类数目K,在【K-平均值聚类分析】—【聚类数】框中输入聚类数目,该数应小于样本数。
SPSS会根据样本数据的实际情况,选择k个有代表性的样本数据作为初始类中心。初始类中心也可以由用户自行指定,需要指定K组样本数据作为初始类中心点。
最优方案原则
一般希望得到的聚类大小大致相等,把每个样品都分配到离它最近的聚类中心(即均值点)就是比较正确的分配方案。聚类的目的是使类间差异尽量大,而类内差异尽量小。K-均值聚类分析中的方差分析提供这种检验功能。SPSS中通过在【K-平均值聚类分析】— 选项(O) —【统计量】选项中勾选【ANOVA表】来完成方差分析。
实战案例:地区三大产业产值聚类分析
本案例使用SPSS对31个省、直辖市、自治区的三大产业生产产值数据进行聚类分析,其中个体距离采用平方欧式距离,类间距离采用平均组间链接距离。
系统聚类分析实现步骤
- 未确定类数前:
- [Analyze]→[Classify]→[Hierarchical Cluster Analysis]对话框
- 将‘第一产业’、‘第二产业’、‘第三产业’添加进Variables中
- 将‘Region’添加进Label Cases by中
- 在[Statistics]对话框中选择‘Range of solutions’,并将Minimum number of clusters输入‘4’,Maximum number of clusters输入‘5’
- 在[Plots]对话框中勾选中‘Dendrogram’
- 在[Method]对话框中选择‘Between-groups linkage’的Cluster Method
- 在[Save]对话框中的‘Range of solutions’,并将Minimum number of clusters输入‘4’,Maximum number of clusters输入‘5’,将输出结果保存到数据集中
系统聚类分析结果分析
系统聚类分析凝聚状态表展示了聚类过程中的详细信息,包括个体距离、个体与小类的距离以及小类与小类的距离。
冰柱图和树状图显示了不同分类数下的聚类情况。碎石图显示聚合系数与分类数的关系,建议分为4类。
确定类数后(将聚类结果确定为4类)
- 确定类数后:
- [Analyze]→[Classify]→[Hierarchical Cluster Analysis]对话框
- 将‘第一产业’、‘第二产业’、‘第三产业’添加进Variables中
- 将‘Region’添加进Label Cases by中
- 在[Statistics]对话框中选择‘Single of solutions’,并输入‘4’
- 在[Save]对话框中的‘Single of solutions’,并输入‘4’,将输出结果保存到数据集中
分类结果如下:
- 第一类:北京、天津、山西、内蒙古、吉林、江西、广西、海南、重庆、贵州、云南、西藏、陕西、甘肃、青海、宁夏、新疆
- 第二类:河北、辽宁、黑龙江、上海、安徽、福建、河南、湖北、湖南、四川
- 第三类:江苏、山东、广东
- 第四类:浙江
K-均值聚类分析
对同一数据集进行K-均值聚类分析,要求分成3类,初始类中心点由SPSS自行指定。
- K-平均值聚类分析对话框:
- [Analyze]→[Classify]→[K-Means Cluster Analysis]
- 将“第一产业”、“第二产业”、“第三产业”添加到【Variables】中
- 将“Region”添加进【Label Cases by】中
- 将Number of Clusters更改为3
- 结果分析:
- 起始聚集中心:每个类的起始类中心的数据(三维坐标)
- 第一类:(1004.92,3991.97,2922.23)
- 第二类:(31.31,20.24,39.63)
- 第三类:(790.60,2084.33,1381.08)
- 迭代历程:第1次迭代后,3个类的中心点分别偏移了407.484、647.918、369.044,第1类中心点偏移较大;第2次迭代后,2个类的中心点偏移均小于指定的判定标准(SPSS默认为0.02),聚类分析结束。
- 最终聚集中心:每个类的最终类中心的数据(坐标)
- 第一类:(1079.00,3696.37,2651.72)
- 第二类:(246.94,483.05,438.52)
- 第三类:(675.80,1753.43,1264.80)
- 方差分析表:因为各个因子对应的p值=0.000,p值 <α=0.05,所以各因子的均值在类中的差异显著。
- K-均值聚类分析类成员情况:第一类包含3个地区;第二类包含17个地区;第三类包含11个地区。
K-均值聚类分析分类结果
- 结论:分为3类。
- 第一类:{江苏、山东、广东}
- 第二类:{北京、天津、山西、内蒙古、吉林、江西、广西、海南、重庆、贵州、云南、西藏、陕西、甘肃、青海、宁夏、新疆}
- 第三类:{河北、辽宁、黑龙江、上海、浙江、安徽、福建、河南、湖北、湖南、四川}
通过本案例,读者可以清晰地了解如何在SPSS中进行系统聚类和K-均值聚类分析,以及如何根据实际需求选择合适的聚类方法和参数设置。