我需要一些帮助解释我的ks.test输出。 我有28个参与者,每个人掷三个骰子。 Vektor g显示了每人的滚动总和。
g <-c(16, 16, 18, 12, 12, 18, 18, 14, 9, 12, 15, 14, 13, 14, 10, 9, 12, 12, 11, 17, 17, 12, 8, 17, 13, 18, 15, 6)
我想将g与实际分布函数进行比较。我使用以下代码生成“true”分布函数:
library("gtools")
library("dice")
v<-seq(1:15)
for (i in 3:18) {
p<-getEventProb(nrolls = 1, ndicePerRoll = 3, nsidesPerDie = 6, eventList= i, orderMatters = FALSE)
v[i]<-p
}
v<-v[-c(1,2)]
以下ks.test产生的D为1,这是不正确的。
ks.test(g, cumsum(v), alternative = "less")
你能告诉我我犯了什么错吗?非常感谢你的回答!
答案 0 :(得分:0)
问题是你要比较两个非常不同的东西:滚动总数的分布(范围从3到18)和概率分布(范围从0到1):
> g
[1] 16 16 18 12 12 18 18 14 9 12 15 14 13 14 10 9 12 12 11 17 17 12 8 17 13 18 15 6
> v
[1] 0.00462963 0.01388889 0.02777778 0.04629630 0.06944444 0.09722222 0.11574074 0.12500000 0.12500000 0.11574074
[11] 0.09722222 0.06944444 0.04629630 0.02777778 0.01388889 0.00462963
所以对于KS来说,这些显然是两个非常不同的东西。可能最简单的方法是确定经验分布中3:18的每个总数的频率(参与者总数),并将其与预期的可能分布进行比较。