测试大型数据集的正态性 - 它如何以及是否可靠?

机器算法验证 r 正态分布 正态假设 大数据
2022-03-16 06:34:56

我正在检查我的数据集的一部分,其中包含 46840 个双精度值,范围从 1 到 1690,分为两组。为了分析这些组之间的差异,我首先检查了值的分布,以便选择正确的测试。

按照正态性测试指南,我做了一个 qqplot、直方图和箱线图。

在此处输入图像描述

在此处输入图像描述 在此处输入图像描述

这似乎不是一个正态分布。由于指南有些正确地指出纯图形检查是不够的,我还想测试分布的正态性。

考虑到数据集的大小和 R 中 shapiro-wilks 测试的限制,应该如何测试给定分布的正态性并考虑数据集的大小,这是否可靠?请参阅此问题的已接受答案

编辑:

我指的 Shapiro-Wilk 测试的局限性在于要测试的数据集限制为 5000 个点。引用有关此主题的另一个好答案:

Shapiro-Wilk 检验的另一个问题是,当您提供更多数据时,拒绝原假设的机会会变得更大。所以发生的情况是,对于大量数据,甚至可以检测到与正态性的非常小的偏差,从而导致拒绝零假设事件,尽管出于实际目的,数据已经足够正常了。

[...] 幸运的是 shapiro.test 通过将数据大小限制为 5000 来保护用户免受上述影响。

至于为什么我首先要测试正态分布:

一些假设检验假设数据呈正态分布。我想知道我是否可以使用这些测试。

1个回答

我不明白你为什么要打扰。这显然不正常——在这种情况下,图形检查对我来说就足够了。你已经从看起来很干净的伽马分布中得到了大量的观察结果。就这样吧。如果必须的话,我会推荐一个参考分布。

x=rgamma(46840,2.13,.0085);qqnorm(x);qqline(x,col='red')
在此处输入图像描述

hist(rgamma(46840,2.13,.0085))

boxplot(rgamma(46840,2.13,.0085))

正如我一直说的那样,“请参阅正态性测试'本质上无用'吗? ”特别是@MånsT 的回答,它指出不同的分析对不同的正态性假设违反具有不同的敏感性。如果您的分布与我的看起来一样接近,那么您可能有偏斜和峰度(“过度峰度”)。对于许多测试来说,这可能是一个问题。如果您不能只找到具有更合适的参数假设或根本没有的测试,也许您可​​以转换您的数据,或者至少对您想到的任何分析进行敏感性分析。1.45.92.9