私は 3000 の実験を設計したので、1 つの実験には 4 つのグループ (治療) があり、各グループには 50 人の個人 (被験者) がいます。実験ごとに、標準的な一元配置分散分析を実行し、p.values が帰無仮説の下で単確率関数を持っているかどうかを証明しますが、ks.test はこの仮定を拒否し、理由がわかりませんか?
subject<-50
treatment<-4
experiment<-list()
R<-3000
seed<-split(1:(R*subject),1:R)
for(i in 1:R){
e<-c()
for(j in 1:subject){
set.seed(seed[[i]][j])
e<-c(e,rmvnorm(mean=rep(0,treatment),sigma=diag(3,4),n=1,method="chol"))
}
experiment<-c(experiment,list(matrix(e,subject,treatment,byrow=T)))
}
p.values<-c()
for(e in experiment){
d<-data.frame(response=c(e),treatment=factor(rep(1:treatment,each=subject)))
p.values<-c(p.values,anova(lm(response~treatment,d))[1,"Pr(>F)"])
}
ks.test(p.values, punif,alternative = "two.sided")