0

我试图就此事联系威廉·雷维尔,但他没有回应。

psych包中有一个名为 cor.smoother 的函数,它确定相关矩阵是否是正定的。其解释如下:

cor.smoother 通过一次系统地删除一个变量并找到特征值分解来检查所有 nvar 次要 nvar-1。它报告这些变量,当这些变量被删除时,会产生一个正定矩阵。它还报告数量删除每个变量时的负特征值。最后,它将原始相关矩阵与平滑相关矩阵进行比较,并报告绝对偏差大于 cut 的项目。这些都是有关相关矩阵可能有问题的提示。

我希望有人能以更容易理解的方式为我解释,这真的是粗体的陈述吗?

4

1 回答 1

1

迟到的回答你的问题。

当矩阵的至少一个特征值小于 0 时,相关矩阵被认为是不正确的(或者更准确地说,不是半正定的)。如果您有一些缺失的数据并且使用成对完成,则可能会发生这种情况相关性。如果您基于具有一些甚至大量缺失数据的数据集进行四色或多色相关,则特别有可能发生这种情况。

(相关矩阵 R 可以分解为一组特征向量 (X) 和特征值 (lambda),其中 R = X λ X'。这种分解是成分分析和因子分析的基础,但不止于此你要知道。)

cor.smooth 函数找到特征值,然后通过使它们略微为正来调整负值(并调整其他值以补偿这种变化)。

cor.smoother 函数尝试识别导致矩阵不正确的变量。它通过考虑通过一次删除一个变量生成的所有矩阵并查看其中哪些不是半正定的(即特征值 < 0)来实现这一点。理想情况下,这将识别出一个正在搞砸的变量。

这方面的一个例子是在 burt 数据集中,悲伤-温柔的相关性可能被打错了,0.87 应该是 0.81。

cor.smoother(burt) #将温柔和悲伤识别为可能的罪魁祸首

于 2016-08-01T17:13:29.320 回答