Python中正态性检验中p值的解释

3

我正在对我的数据进行正态性检验。通常,我期望数据是近似正态分布的(足够正态),这得到了原始值的直方图和QQ图的支持。 histogram of data enter image description here 我已经执行了Kolmogorov-Smirnov和Shapiro-Wilk测试,这就是我感到困惑的地方。我的p值几乎为0。 Kolmogorov-Smirnov统计量=0.78,p值=0.0 Shapiro-Wilk统计量=0.99,p值=1.2e-05 这让我相信我应该拒绝零假设。 我原本认为这是由于我的均值和标准差与KS测试所假设的0和1不同,如此处所解释的,但后来在plotly的正态性测试教程中发现,对于两个测试,低p值似乎支持零假设! plotly正态性测试教程 是否更改了测试的执行方式?还是教程页面上有错误?
2个回答

2

在这个教程中似乎有一个错误。正如他们所说(经典定义),零假设是参考分布和被测试的分布之间没有显著差异。当p值小于您的阈值(当测试统计量大于临界值时)时,应该拒绝这个假设。在同一教程链接中,他们还说明了如何接受或拒绝零假设。

因此,我认为这是一个错误。在两个示例中,都应该拒绝没有差异的零假设,因为p值似乎小于0.05,并且测试统计量大于各自的临界值。


2
我刚刚从教程中下载了数据集,并通过R进行了操作。我同意你们两个的看法,他们在Shapiro测试和KS测试上的结论是错误的。
此外,在进行KS测试时,你不仅需要使用“norm”来建议分布,还需要提供参数值。事实上,ks.test(x,"pnorm", mean(x),sd(x))将给出一个0.0475的p值。这比他们声称的“0.0”更有意义,因为非参数检验在p值上比参数检验更宽松。
同时添加数据集的直方图和qqplot。 enter image description here enter image description here

谢谢!我已经在我的kstest中包含了均值和标准差,现在p值确实>0.1,表明我的数据是正态分布的。谢谢! - branwen85

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接