在计算相关矩阵时,丢弃带有缺失值的观测值是否存在严重问题?


12

我有2500个变量和142个观测值的庞大数据集。

我想在变量X和其余变量之间运行关联。但是对于许多列,缺少条目。

我尝试使用“成对完成”参数(use=pairwise.complete.obs)在R中执行此操作,并输出了一堆相关性。但是随后StackOverflow上的某人发布了指向本文http://bwlewis.github.io/covar/missing.html的链接,这使R中的“成对完成”方法显得无法使用。

我的问题:我怎么知道什么时候适合使用“成对完成”选项?

use = complete.obs回来了no complete element pairs,所以如果您能解释一下这也意味着什么,那就太好了。


Answers:


11

成对完整观测值的相关性问题

在您描述的情况下,主要问题是解释。因为您使用的是成对的完整观测值,所以实际上您正在为每个相关性分析略有不同的数据集,具体取决于缺少的观测值。

考虑以下示例:

a <- c(NA,NA,NA, 5, 6, 3, 7, 8, 3)
b <- c(2, 8, 3, NA,NA,NA, 6, 9, 5)
c <- c(2, 9, 6, 3, 2, 3, NA,NA,NA) 

数据集中的三个变量abc,每个人都有一些缺失值。如果您在此处计算变量对之间的相关性,那么您将只能使用没有两个相关变量都缺少值的案例。在这种情况下,这意味着你将成为之间的相关性分析刚刚过去3案件ab刚刚在前三种情况下对之间的相关性,b并且c

当您计算每个相关性时,您正在分析完全不同的情况,这意味着相关性的结果模式看起来很荒谬。看到:

> cor(a,b, use = "pairwise.complete.obs")
[1] 0.8170572
> cor(b,c, use = "pairwise.complete.obs")
[1] 0.9005714
> cor(a,c, use = "pairwise.complete.obs")
[1] -0.7559289

这看起来像一个逻辑上的矛盾--- ab强烈正相关,而bc也强烈正相关,所以你可能认为ac作为也呈正相关,但实际上是在相反的方向有很大的关系。您会看到为什么很多分析家都不喜欢这样。

编辑以包括来自whuber的有用说明:

请注意,部分论证取决于“强”相关性可能意味着什么。这是完全可能的ab以及bc,同时存在一个之间的“在相反方向上强关联”或“强正相关” ac,但不是很极端如本例所示。问题的症结在于,估计的相关性(或协方差)矩阵可能不是正定的:这就是量化“强”的方式。

缺少类型的问题

您可能会想自己:“嗯,仅假设我可用于每个关联的案例子集或多或少地遵循与我拥有完整数据时所得到的模式相同的做法就可以了吗?” 是的,这是真的--- 只要数据是随机的,就可以计算数据子集的相关性并没有什么根本错误(尽管您会损失精度和功效,当然是因为样本量较小)。如果您没有任何遗漏,那么所有可能存在的数据的样本。

当缺失纯粹是随机的时,就称为MCAR(完全随机丢失)。在那种情况下,分析没有缺失的数据子集不会系统地偏向您的结果,并且不太可能(但并非不可能)获得我在上面的示例中显示的那种疯狂的关联模式。

当您的缺失以某种方式系统性的(通常缩写为MAR或NI,描述了两种不同类型的系统性缺失)时,您将面临更严重的问题,既有可能在计算中引入偏差,也有可能使您的归纳能力下降感兴趣的总体的结果(因为您要分析的样本不是来自总体的随机样本,即使您的整个数据集都是如此)。

有很多有用的资源可用来了解丢失的数据以及如何处理它,但是我的建议是Rubin: 经典的以及最近的文章


2
一种bbC一种C

1
@whuber谢谢,这很重要。我已经更新了答案的这一部分,以进行澄清。
罗斯·哈特曼

7

一个令人担忧的问题是数据是否会以某种系统的方式丢失,这会破坏您的分析。您的数据可能会随机丢失。

这是在以前的答案中提到的,但是我想我会举一个例子。

财务示例:回报缺失可能是不良回报

  • 与共同基金不同,法律不要求私募股权基金(和其他私募基金)向某些中央数据库报告其回报。
  • 因此,主要的担忧是报告是内生的,更具体地说,一些公司不会报告不良收益。
  • 1个ñ一世[R一世[R一世

在这种情况下(不一定可以做所有事情)并不一定会丢失所有信息,但是对不丢失的数据进行幼稚的回归(或计算相关性)可能会导致总体中真实参数的估计有严重偏差和不一致。


4

如果丢失的数据是“随机丢失完整数据”(MCAR),则成对相关是合适的。保罗·艾里森(Paul Allison)的《数据丢失》(Missing Data)书是一个开始的好地方。

您可以使用BaylorEdPsych包装中的Little's(1988)MCAR Test对此进行测试。


1
仍然存在令人担忧的问题:即使使用MCAR数据,通过成对相关估计的相关矩阵也可能无法为正定的。
ub

当然可以,但是这个问题是关于相关性的,它没有提及使用所得相关性矩阵作为其他算法的输入。而且,鉴于样本量,MCAR还是不太可能。
蒂姆(Tim)

1
如果矩阵不是正定的,则​​它是无效的估计。至少我们必须担心这种不一致。恐怕我看不到MCAR的可能性(这是一种缺失的机制)如何与样本量有关。
豪伯

询问者对相关矩阵的单行感兴趣。如果矩阵不是正定的,您是否有证据显示行的相关性都无效?我希望看到这一点的证明并获得一些智慧。通常,使用真实世界的数据,MCAR的可能性很小。对于大样本量,Little检验的功效会增强,因此很有可能会拒绝MCAR的零假设。不要误会我的意思:我永远不会使用部分数据相关矩阵作为多元方法的输入,但这并不是问题所在。
蒂姆(Tim)

1
让我澄清一下:我没有声称相关性“全部无效”。我声称相关估计的集合(即矩阵)可能是无效的。这是无可争辩的(不需要证明),因为所有需要做的就是展示一个无效估计的实例,@ RoseHartman已经在此线程中完成了。我不会质疑您声称MCAR不太可能的说法-只要从个人的角度理解它即可:根据您的经验,结合您熟悉的各种数据, MCAR很少见。我看不出您能为该主张的任何更广泛的解释辩护。
ub
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.