chisq.test 与 R 的输出问题
Problem with the output of chisq.test with R
我实际上是在为本福德定律创建一个包(用于学术目的)。
我正在尝试与“chisq.test”相吻合。
我有这个向量:
prop = [1377 803 477 381 325 261 253 224 184]
我想与这个概率向量(本福德定律的第一个数字)进行比较:
第 = [0.301 0.176 0.125 0.097 0.079 0.067 0.058 0.051 0.046]
因此,我进行了测试:
chisq.test(prop,p=th)
然后,如果我正确理解测试的目的,它应该 return 一个大的 p 值(接近 1 而不是 0),因为数据 (prop) 的比例与理论比例 (th) ,但输出给我:
"给定概率的卡方检验
数据:道具
X 平方 = 22.044,df = 8,p 值 = 0.004835"
因此,如果有人可以帮助我理解它给出的这个低 p 值?
非常感谢
PS :
我用相同的数据执行了“chisq.benftest”(针对本福德定律的 Pearson 卡方拟合优度检验),它给了我一个更连贯的 p 值 (0.7542),因此我应该有哪里做错了,但我不知道在哪里。
我认为低 p 值是因为您有很多测量值,而数据与理论预期的吻合程度不够好。
如果您的测量值越少,不确定性就会越大,您就会得到更高的 p 值。
chisq.test(prop/2, p=th) # p-value = 0.1916
chisq.test(prop/3, p=th) # p-value = 0.4884
chisq.test(prop/4, p=th) # p-value = 0.6929
chisq.test(prop/5, p=th) # p-value = 0.8121
要查看算法发现最大差异的位置,您可以像这样绘制 chi-gram:
barplot(prop - (sum(prop) * th)) / sqrt(sum(prop) * th)
这是一个普通的 R 示例,检查对等分布的拟合优度:
a <- c(11, 9)
t <- c(0.5, 0.5)
chisq.test(a,p=t)
这给出了 p 值 0.6547,因为它是相当少的测量值,并且只有 1 个自由度。
但是如果你运行相同的测试,相同的比例,观察的数量越来越多,p值不断下降:
chisq.test(a*3,p=t) # p-value = 0.4386
chisq.test(a*10,p=t) # p-value = 0.1573
chisq.test(a*20,p=t) # p-value = 0.0455
当您绘制原始数据时,您的原始数据确实看起来非常接近理论。但是有很多自由度,你有很多观察。
同样的原则也适用于其他推论统计。更多的观察意味着算法更加确定样本代表总体的程度。
我实际上是在为本福德定律创建一个包(用于学术目的)。 我正在尝试与“chisq.test”相吻合。
我有这个向量:
prop = [1377 803 477 381 325 261 253 224 184]
我想与这个概率向量(本福德定律的第一个数字)进行比较:
第 = [0.301 0.176 0.125 0.097 0.079 0.067 0.058 0.051 0.046]
因此,我进行了测试:
chisq.test(prop,p=th)
然后,如果我正确理解测试的目的,它应该 return 一个大的 p 值(接近 1 而不是 0),因为数据 (prop) 的比例与理论比例 (th) ,但输出给我:
"给定概率的卡方检验 数据:道具 X 平方 = 22.044,df = 8,p 值 = 0.004835"
因此,如果有人可以帮助我理解它给出的这个低 p 值?
非常感谢
PS :
我用相同的数据执行了“chisq.benftest”(针对本福德定律的 Pearson 卡方拟合优度检验),它给了我一个更连贯的 p 值 (0.7542),因此我应该有哪里做错了,但我不知道在哪里。
我认为低 p 值是因为您有很多测量值,而数据与理论预期的吻合程度不够好。
如果您的测量值越少,不确定性就会越大,您就会得到更高的 p 值。
chisq.test(prop/2, p=th) # p-value = 0.1916
chisq.test(prop/3, p=th) # p-value = 0.4884
chisq.test(prop/4, p=th) # p-value = 0.6929
chisq.test(prop/5, p=th) # p-value = 0.8121
要查看算法发现最大差异的位置,您可以像这样绘制 chi-gram:
barplot(prop - (sum(prop) * th)) / sqrt(sum(prop) * th)
这是一个普通的 R 示例,检查对等分布的拟合优度:
a <- c(11, 9)
t <- c(0.5, 0.5)
chisq.test(a,p=t)
这给出了 p 值 0.6547,因为它是相当少的测量值,并且只有 1 个自由度。
但是如果你运行相同的测试,相同的比例,观察的数量越来越多,p值不断下降:
chisq.test(a*3,p=t) # p-value = 0.4386
chisq.test(a*10,p=t) # p-value = 0.1573
chisq.test(a*20,p=t) # p-value = 0.0455
当您绘制原始数据时,您的原始数据确实看起来非常接近理论。但是有很多自由度,你有很多观察。
同样的原则也适用于其他推论统计。更多的观察意味着算法更加确定样本代表总体的程度。