SPSS 命令: SPSS QUICK CLUSTER

在浏览器中做 K-均值聚类分析

K-均值把每个个案分配给 k 个聚类中心中最近的一个,并不断移动中心直到分配稳定。

免费 · 无需注册 · 文件留在本机 · 更新于 2026年10月18日

能告诉你什么

Crosstabs 运行与 SPSS QUICK CLUSTER 对应的过程:先用 SPSS 的单遍规则选出彼此远离的初始中心,可选运行平均值,然后进行最近中心迭代;不使用随机起点,因此同一文件总得到相同的聚类。

  • 每个聚类的位置:最终聚类中心即各变量在聚类内的平均值。
  • 聚类之间相距多远:见最终聚类中心间的欧氏距离。
  • 哪些变量最能区分聚类:见描述性的 ANOVA F 值。
  • 每个个案属于哪个聚类,以及它与聚类中心的距离。

适用场景

适合使用

  • 变量为量纲可比的连续变量(例如多项 0–100 的重要性评分),且细分群数量事先确定。
  • 文件较大、计算完整距离矩阵会很慢时:K-均值只需比较个案与 k 个中心。
  • 以系统聚类得到的聚类数为基础,进一步优化聚类解。

改用其他方法

  • 含分类变量:K-均值需要数值距离;混合数据请使用两步聚类。
  • 变量单位差异很大且未先标准化:量纲最大的变量会主导结果。
  • 完全不知道 k 应取多少:比较多个取值,或先用两步聚类或系统聚类。

在 Crosstabs 中如何操作

  1. 01

    选择 K-均值聚类

    把工作区切换到“统计”模式,在“分类”下选择“K-均值聚类”(QUICK CLUSTER)。

  2. 02

    选择要聚类的变量

    在“要聚类的变量”中勾选数值变量,并可在“个案标注依据”中选择一个变量用于聚类成员表。

  3. 03

    设置聚类数

    输入“聚类数”(2 到 50,默认 2)。

  4. 04

    调整迭代选项

    与 SPSS 相同,“最大迭代次数”默认 10,“收敛标准”默认 0。勾选“使用运行平均值”可在每个个案分配后立即更新中心。

  5. 05

    运行并检查收敛

    运行后查看“迭代历史记录”下的脚注:如果迭代在达到最大次数时停止,请提高“最大迭代次数”后重新运行。变量按原始尺度使用。

计算示例

以下结果由 Crosstabs 引擎在构建本页时根据模拟数据实际计算得出,并非手工填写。

用示例数据试一试

数据

60 名模拟受访者对价格、质量和服务的重视程度打分(0–100),按三种态度类型各 20 人生成,叠加正态噪声并使用固定随机种子。三项评分量纲相同,因此不做标准化,取 k = 3、最大迭代 10 次、收敛标准 0(面板默认值)。

迭代历史记录
迭代123
116.40725.81420.385
20.0001.6841.335
30.0000.0000.000

由于聚类中心没有改动或改动较小而达到收敛。

最终聚类中心
项目123
price80.3039.1052.10
quality45.9583.3058.90
service40.9052.0587.95
ANOVA
项目聚类均方df误差均方dfF显著性
price8872.27280.0057110.91<.001
quality7193.622100.055771.90<.001
service12089.45269.5457173.85<.001

F 检验仅用于描述:聚类的选择旨在使差异最大化,因此显著性水平未经修正,不能用于检验聚类平均值是否相等。

每个聚类中的个案数
聚类N
120
220
320
有效 N60
缺失 N0

结果解读

K-均值经过 3 次迭代后收敛,把 60 名受访者分为大小为 20、20、20 的聚类。聚类 1、2、3 的最终中心最高的变量依次为 price、quality、service,可分别解读为各自侧重一项因素的受访者。ANOVA 的 F 值(最大为 173.85)说明哪项评分最能区分聚类,但正如脚注所述,它们只用于描述,不是检验。平均轮廓为 0.696。

输出表格说明

初始聚类中心
按 SPSS 规则选出、彼此相距较远的 k 个起始中心。
迭代历史记录
每次迭代中各中心的移动距离;脚注说明是否已收敛或已达到最大迭代次数。
最终聚类中心
每个聚类中各变量的平均值,是为细分群命名的依据。
最终聚类中心间的距离
每对最终中心之间的欧氏距离;数值小说明这两个聚类可能值得合并。
ANOVA
每个变量的聚类均方、误差均方和 F 值。F 值可用于比较各变量对聚类的区分程度;显著性水平仅供描述。
每个聚类中的个案数
各聚类规模以及有效 N 与缺失 N;“聚类成员”表随后列出每个个案所属聚类及其与中心的距离。

前提假设与注意事项

  • 距离为原始值上的欧氏距离,因此变量应具有相同量纲或事先标准化。
  • K-均值偏好紧凑、近似球形且离散程度相近的聚类;细长或嵌套的分组会被不当拆分。
  • 任一聚类变量缺失的个案将被成列排除;离群值可能被选为初始中心。
  • 不应用工作区权重:此过程分配的是单个个案。

结果如何验证

QUICK CLUSTER 在 140 个个案、k = 3 和 k = 4 的数据上验证:初始中心与按 SPSS 初始中心规则独立编写的 NumPy 实现对照,迭代过程与从同一初始中心出发的 scikit-learn 1.9.1 Lloyd K-均值对照。初始与最终中心一致到小数点后 10 位,聚类成员完全相同,ANOVA F 值与 scipy.stats.f_oneway 一致到 9 位小数;运行平均值选项与更新步骤的 NumPy 实现对照,并测试了默认的 10 次迭代上限。 验证证据(英文)

常见问题

为什么每次得到的聚类都一样?

QUICK CLUSTER 不使用随机起点。初始中心由对文件的一次确定性遍历得到,因此结果可重复;但调整个案顺序可能改变结果。

如何选择聚类数?

尝试多个 k 值,比较最终中心是否易于解释、中心间距离以及摘要行中的平均轮廓。也可以先对样本做系统聚类来确定初始 k。

ANOVA 的显著性水平可信吗?

不能作为检验使用。聚类的选择本身就是为了让差异最大化,因此 F 值必然偏大。它们只用于比较哪些变量对聚类的区分作用最大。

运行平均值有什么作用?

勾选“使用运行平均值”后,每分配一个个案就更新一次中心,而不是在完整遍历后才更新。结果可能略有差异;SPSS 默认不启用。

这与分群构建器相同吗?

不同。“统计”模式中的面板遵循 SPSS QUICK CLUSTER;分群构建器使用另一套确定性 k-means,用于快速分群和画像。

用你自己的数据运行 K-均值聚类

打开 .sav、CSV 或 Excel 文件。所有计算都在浏览器中完成,文件不会离开你的设备。

打开分析工作区

SPSS 是 IBM Corp. 的商标。Crosstabs 与 IBM 无关联,也未获得 IBM 认可。