我正在进行假设检验,以确定数据是否遵循p=0.31的二项式分布,并且在运行以下命令时会收到警告:
chisq.test(x = c(36,48,38,23,10,3),p = dbinom(0:5,5,0.31))
Chi-squared test for given probabilities
data: c(36, 48, 38, 23, 10, 3)
X-squared = 28.265, df = 5, p-value = 3.23e-05我收到的警告信息是:
Warning message:
In chisq.test(x = c(36, 48, 38, 23, 10, 3), p = dbinom(0:5, 5, 0.31)) :
Chi-squared approximation may be incorrect发布于 2022-10-10 20:31:03
我相信你想要做的是,如果给出一个概率为0.31的二项分布的100个观测值的大小,你会得到同样的结果。在这种情况下,R的chisq.test()不是一个很好的选择,首先是因为你指出了错误的概率。你给出了每个观察的概率,逐个,元素,这不是你的意思。下面是一个例子:
x <- c(36,48,38,23,10,3)
binom(0:5, 5, 0.31)
[1] 0.156403135 0.351340375 0.315697149 0.141834951 0.031861475 0.00286291536不等于0.15,其他元素也是如此。你可以把x除以100,但你仍然没有在这里应用正确的统计检验。
一种选择是使用Kolmogorov测试,该测试用于测试一个样本是否来自某个分布。若要在R中执行一个样本或两个样本的Kolmogorov测试,我们可以使用ks.test()函数。在这里,我们假定:
H_0:,在本例中,两个数据集值来自相同的分布二项式。
ks.test(c(36,48,38,23,10,3), pbinom(5, 100, 0.31))
Two-sample Kolmogorov-Smirnov test
data: c(36, 48, 38, 23, 10, 3) and pbinom(5, 100, 0.31)
D = 1, p-value = 0.2857
alternative hypothesis: two-sided瞧!我们的观察结果可能来自p=0.31的二项分布。仍然要注意的是,有了这几个观察结果,测试结果就不太可靠了。
https://datascience.stackexchange.com/questions/115084
复制相似问题