SPSS - 在因子分析后使用 K 均值聚类

SPSS - Using K-means clustering after factor analysis

我是一名开发人员,负责研究如何使用 SPSS 收集以前的结果,因此我们可以使用一些新数据重复该过程。我们不能问做最初分析的人,因为很遗憾他已经不在我们身边了,所以我要弄清楚他做了什么。

我不是统计学家,不需要了解其中的原理。我真的只需要知道要导航到哪些菜单项。

我们进行了一项调查,向 10,000 人提出了很多问题。正在使用其中 15 个问题的子集进行分析。

我知道进行因子分析是为了将数据减少到 4 组。然后使用 K 均值聚类来查找聚类中心。这就是我现在所追求的。

我已经弄清楚如何进行因子分析以获得与我数据库中的数据相匹配的成分得分系数矩阵。这是通过转到分析 > 降维 > 因子来完成的。然后,我从 "Extract" 部分选择了固定数量的因子 (4),从 "Rotation" 部分选择了 "Varimax" 旋转,并检查了 "Scores" 部分中的 "Display factor score coefficient matrix" .

这给出了这样的数据:

Matrix   Value 1   Value 2   Value 3   Value 4
Q1       -0.0756   0.2134    -0.0245   -0.1236
Q2       ...       ...       ...       ...
Q3       ...       ...       ...       ...
...

我不知道如何继续进行 k 均值聚类。

我在数据库中的结果如下所示:

Cluster centers   Value 1   Value 2   Value 3   Value 4   Value 5
FAC1_1            -0.8373   -0.5766   0.2100    1.3499    0.2940
FAC2_1            ...       ...       ...       ...       ...
FAC3_1            ...       ...       ...       ...       ...
FAC4_1            ...       ...       ...       ...       ...

现在,我知道可以使用“分析”>“分类”>“K 均值聚类”对原始数据集进行 k 均值聚类,但我不知道如何参考我所做的因子分析。

有人可以告诉我如何使用 SPSS 创建这些聚类中心吗?

在因子分析的 GUI 中(分析 > 降维 > 因子),你有一个子对话框 "Scores",确保选中 "Save as variables"。

这将在您的数据中保存因子得分,即变量 FAC1_1、FAC2_1、FAC3_1、FAC4_1。

您需要将这些变量添加为 K-means GUI 中的输入变量。

最好在语法中设置你的工作,这样如果任何其他人想要复制你的工作,他们就可以这样做(理想情况下,你的前任也应该在语法文档中留下他的面包屑。我会每次尝试查找此文档(如果存在极小的可能性,即文件扩展名为 .sps 的文件)。

以下是您如何在语法中设置它以及 his/her 工作方式可能是什么样的:

/* Replicate the factor analysis (four factors) and save the factor score variables */.
FACTOR
  /VARIABLES < INPUT THE 15 VARIABLES HERE >
  /MISSING LISTWISE 
  /ANALYSIS < INPUT THE 15 VARIABLES HERE >
  /PRINT EXTRACTION ROTATION FSCORE
  /FORMAT SORT BLANK(.10)
  /PLOT ROTATION
  /CRITERIA FACTORS(4) ITERATE(25)
  /EXTRACTION PC
  /CRITERIA ITERATE(25)
  /ROTATION VARIMAX
  /SAVE REG(ALL)
  /METHOD=CORRELATION.

 /* Replicate the clustering using factor scores as inputs, generating 5 segments */.
QUICK CLUSTER FAC1_1 FAC2_1 FAC3_1 FAC4_1
  /MISSING=LISTWISE
  /CRITERIA=CLUSTER(5) MXITER(10) CONVERGE(0)
  /METHOD=KMEANS(NOUPDATE)
  /SAVE CLUSTER (Seg5)
  /PRINT INITIAL.

/* Check centroids match*/.
MEANS FAC1_1 FAC2_1 FAC3_1 FAC4_1 BY Seg5 /CELLS MEAN.

如果您可以复制 FACTOR 得分变量以使其完全匹配,那么这是一个好的开始,如果质心不匹配,那么考虑到因素得分确实匹配,那么它只能 be/most 可能是因为段分配现在不同了。尽管使用相同的 input/methodology 如果案例排序与以前不同,K-Means QUICK CLUSTER 可以并且很可能会由于随机起点而产生不同的段分配。

我不知道如何解决这个问题,但原则上这些是 he/she 可能采取的步骤。

如果您有权访问完成原始工作的系统,请查找日志文件(通常命名为 statistics.jnl 并保存在“编辑”>“选项”>“文件”下指定的位置)。 如果日记功能与追加选项一起生效,它将拥有用户 运行.

的所有命令

我正在为一个项目做同样的一组分析。仅供参考,SPSS 提供的两步聚类过程比 K-means 更稳健 (Punj & Stewart 1983)。在 K-means 中,你将如何选择 K?!如果你坚持使用 K-means,你也可以使用 clvalid 包来获得最佳的 K 数。

Punj, G., & Stewart, D.W. (1983)。营销研究中的聚类分析:综述和应用建议。营销研究杂志,134-148。

我曾经为我的一个项目做过类似的分析。首先进行因子分析,一旦您能够从因子分析中提取大量方差,请尝试保存因子分数(在 SPSS 中)。

要保存因子分数,请转到分析->降维->因子->分数->另存为变量。

当您保存乐谱时,会根据组件的数量在变量视图中创建新变量。

在你能够保存因子的分数后,转到分析->分类->K-均值和select新变量(因子分数)输入所需的初始聚类数然后确定.