序数变量的聚类分析(李克特量表)

机器算法验证 r 聚类 序数数据
2022-03-31 23:01:25

我想在 R 中使用 kmeans 或 hclust 对我的数据进行聚类(我是新的 R 用户)。

我的数据是有序的,李克特量表,用来衡量成本上升的原因。我有 41 个原因“变量”,范围从 1 到 5(1:无影响,5:主要影响)。我有大约 160 个观察结果“谁对原因进行评分”。

我想根据观察中出现的相似性对变量(列,而不是行)进行聚类,但我不知道如何开始。

在聚类之前是否必须将比例转换为百分比或 z 分数?

我的数据可用并以Google Drive 电子表格的形式共享。

3个回答

您正在尝试确定适当的距离度量,并且显然您注意到这可能是多么棘手。

序数数据不是区间数据。你应该考虑:

  • 每个类别之间的距离是否相同(2和3之间的距离是否与3和4之间的距离相同?)
  • 是否需要对中性/空类别进行特殊考虑(在您的情况下,1:无效)。
  • 是否需要一起考虑您的几个原因变量。例如,您可能决定将 2 个相关变量相加,并将它们视为一个(导数)变量以进行聚类。

这些考虑有心理根源。例如,人们倾向于更重视量表末端选项之间的差异,而不是中间选项。

您可以根据这些考虑决定采用一种方法,包括: - 清理数据 - 将当前尺度转换为欧几里得空间中的尺度。

...或者,您可以决定这对您的目的来说不是必需的。

使用李克特量表的现有研究通常使用基于余弦距离和皮尔逊相关性的距离度量。

您可能会发现以下内容很有用:

我不确定适合模型所需的数据量,但您要求因子分析的常见用法。查看 Quick-R 的这个页面,它将帮助您处理一些关于如何将您的问题映射到潜在空间的首字母示例。您可以使用它来查看将加载到相同因素中的相似问题之间的关系

http://www.statmethods.net/advstats/factor.html

先前的技术是探索性因素分析的一部分。我不是专家,但总结一下我提到的链接所说的内容,对于验证性因子分析,您可以尝试结构方程建模,您可以通过 sem 包尝试使用 R

http://socserv.mcmaster.ca/jfox/Misc/sem/SEM-paper.pdf

祝你好运。