QQ 情节看起来很正常,但 Shapiro-Wilk 测试却不然

机器算法验证 r 正态分布
2022-02-14 10:34:37

在 R 中,我有一个包含 348 个度量的样本,并且想知道我是否可以假设它是正态分布的,以供将来的测试使用。

基本上遵循另一个堆栈答案,我正在查看密度图和 QQ 图:

plot(density(Clinical$cancer_age))

在此处输入图像描述

qqnorm(Clinical$cancer_age);qqline(Clinical$cancer_age, col = 2)

在此处输入图像描述

我在统计方面没有丰富的经验,但它们看起来像是我见过的正态分布的例子。

然后我运行 Shapiro-Wilk 测试:

shapiro.test(Clinical$cancer_age)

> Shapiro-Wilk normality test

data:  Clinical$cancer_age
W = 0.98775, p-value = 0.004952

如果我正确解释它,它会告诉我拒绝原假设是安全的,即分布是正态的。

但是,我遇到了两个 Stack 帖子(herehere),它们严重破坏了该测试的实用性。看起来如果样本很大(348被认为是大吗?),它总是会说分布不正常。

我应该如何解释这一切?我应该坚持使用 QQ 图并假设我的分布是正常的吗?

2个回答

你在这里没有问题。你的数据可能有点不正常,但它足够正常,不会造成任何问题。许多研究人员在假设正态性的情况下进行统计检验,而正态性数据远低于您所拥有的数据。

我会相信你的眼睛。尽管尾部有一些轻微的正偏斜,但密度和 QQ 图看起来是合理的。在我看来,您无需担心这些数据的非正态性。

您的 N 约为 350,p 值非常依赖于样本量。对于大样本,几乎任何事情都可能很重要。此处已对此进行了讨论。

这篇非常受欢迎的帖子有一些令人难以置信的答案,基本上得出的结论是,对非正态性进行零假设显着性检验“基本上没有用”。该帖子上公认的答案是一个极好的证明,即使数据是从接近高斯的过程中生成的,足够高的样本量也会使非正态检验显着。


抱歉,我意识到我链接到您在原始问题中提到的帖子。不过,我的结论仍然成立:您的数据并非如此不正常,以至于它应该会造成问题。

你的分布正常。看看尾巴(或没有尾巴)。以下是您对正常 QQ 图的期望。

在此处输入图像描述

关于如何解读各种 QQ 图,请参阅这篇文章。

请记住,虽然分布在技术上可能不正常,但它可能足够正常以符合需要正常的算法的条件。