
我试了很多次计算Ryan (RJ)的P值。是否有任何方法或公式来计算RJ值。我找到了如何计算RJ值,但无法找到RJ值的手动计算部分。Minitab是通过一些起步来计算的。我想知道如何手工计算。
请在这个问题上支持我。
发布于 2022-08-29 15:54:47
需要将检验统计量RJ与临界值CV进行比较,以确定是否拒绝或拒绝空假设。
CV的值取决于样本的大小和期望的置信度,并通过经验推导出:为每个样本生成大量的正态分布数据集,计算每个样本的RJ统计量,然后a=0.10的CV为RJ的第10百分位数。
Sidenote:由于某种原因,我看到reason在许多地方使用了90%的置信度,而95%的置信度通常用于其他正常度测试。我不知道为什么。
我推荐阅读Ryan 1976年的原始论文:https://www.additive-net.de/de/component/jdownloads/send/70-support/236-normal-probability-plots-and-tests-for-normality-thomas-a-ryan-jr-bryan-l-joiner。
在该文件中,经验推导了以下临界值方程(为了方便起见,我用python编写):
def rj_critical_value(n, a=0.10)
if a == 0.1:
return 1.0071 - (0.1371 / sqrt(n)) - (0.3682 / n) + (0.7780 / n**2)
elif a == 0.05:
return 1.0063 - (0.1288 / sqrt(n)) - (0.6118 / n) + (1.3505 / n**2)
elif a == 0.01:
return 0.9963 - (0.0211 / sqrt(n)) - (1.4106 / n) + (3.1791 / n**2)
else:
raise Exception("a must be one of [0.10, 0.05, 0.01]")然后,需要将RJ测试统计数据与该临界值进行比较:
RJ < CV,那么测定是不正常的。RJ > CV,那么测定是正常的。。
Minitab更进一步--向后移动,以确定a的值,CV == RJ在其中的值。这个值将是你在最初的问题中引用的p值。
https://stackoverflow.com/questions/72401246
复制相似问题