- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我设计了 3000 个实验,因此在一个实验中有 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")
最佳答案
我注释掉了代码中更改随机种子的行,得到的 P 值为 0.34。那是一个未知的种子,所以为了重现性,我做了 set.seed(1)
并再次运行它。这一次,我的 P 值为 0.98。
至于为什么这会产生影响,我不是 PRNG 方面的专家,但任何体面的生成器都可以确保连续抽签在所有实际用途中都是统计独立的。最好的将确保更大的延迟相同,例如,R 的默认 PRNG 的 Mersenne Twister 保证它的延迟高达 623 (IIRC)。事实上,干预种子很可能会损害抽签的统计特性。
您的代码也在以一种非常低效的方式做事。您正在为实验创建一个列表,并为每个实验添加一个项目。 在每个实验中,您还可以创建一个矩阵,并为每个观察添加一行。然后你对 P 值做一些非常相似的事情。我看看能不能解决。
这就是我要替换您的代码的方式。严格来说,我可以通过避免使用公式、创建裸模型矩阵并直接调用 lm.fit
来使其更加紧凑。但这意味着必须手动编写 ANOVA 测试代码,而不是简单地调用 anova
,这比它的值(value)更麻烦。
set.seed(1) # or any other number you like
x <- factor(rep(seq_len(treatment), each=subject))
p.values <- sapply(seq_len(R), function(r) {
y <- rnorm(subject * treatment, s=3)
anova(lm(y ~ x))[1,"Pr(>F)"]
})
ks.test(p.values, punif,alternative = "two.sided")
One-sample Kolmogorov-Smirnov test
data: p.values
D = 0.0121, p-value = 0.772
alternative hypothesis: two-sided
关于r - 在 R 中使用 Kolmogorov Smirnov 检验,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17381214/
我很难让 ks.test 使用卡方分布式数据: > chi10 ks.test(chi10, dchisq, df=10) One-sample Kolmogorov-Smirnov tes
已关闭。此问题旨在寻求有关书籍、工具、软件库等的建议。不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以
我说的是用 python 公式检索这个表媒体的值 https://www.soest.hawaii.edu/GG/FACULTY/ITO/GG413/K_S_Table_one_Sample.pdf
假设我们有两个样本 data1 和 data2 以及它们各自的权重 weight1 和 weight2 并且我们想计算两个加权样本之间的 Kolmogorov-Smirnov 统计量。 我们在 pyt
我正在尝试为我的数据获得最佳分布。试衣完成如下图所示,但我需要测量,以选择最佳型号。我将拟合优度与卡方值进行比较,并使用 Kolmogorov-Smirnov (KS) 检验检验观察分布和拟合分布之间
我使用以下Python代码向学生演示随机变量的生成: import numpy as np import scipy.stats as stats def lcg(n, x0, M=2**32, a=
我正在尝试用 Java 运行 Smirnov 测试,以查看两组数据是否来自同一分布。但是,我收到“找不到符号”错误。如何“构建”Smirnov 测试以免出现此错误? import java.io.*;
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 7 年前。 Improve this qu
在进行重要性抽样实验时,我模拟了 Kolmogorov-Smirnov 距离的值 $$ D_n =\max_x |\hat{F}_n(x)-F(x)| $$ 其中 $n$ 是原始重要性样本的大小,我想
柯尔莫哥洛夫-斯米尔诺夫统计量定义为经验累积分布函数与假设累积分布函数之间的最大距离。我认为,与其看数字,不如使用图表来找出最大差异。 我知道如何绘制经验分布函数 p1<-qplot(rnorm(30
我对 R 中的 ks 函数有疑问。我有一个拉普拉斯分布: ldes <- function(y, a) { if(y < 0.5) 1/a*log(2*y, 2) else 1/a*log(
我在 Spark 中有两组数据(我们称它们为 d1、d2)。我想执行两个样本柯尔莫哥洛夫-斯米尔诺夫检验,以测试它们的底层总体分布函数是否不同。 MLLib 的 Statistics.kolmogor
我设计了 3000 个实验,因此在一个实验中有 4 组(治疗组),每组有 50 个人(受试者)。对于每个实验,我都会做一个标准的单向方差分析,并证明它们的 p.values 在零假设下是否具有单一概率
我有一组实验值和一个概率密度函数,据说可以描述它们的分布: def bekkers(x, a, m, d): p = a*np.exp((-1*(x**(1/3) - m)**2)/(2*d*
我正在尝试测试值列表是否均匀分布。我知道 Kolmogorov-Smirnov 检验是适合运行的检验。但是,我的结果对我来说没有任何意义。 在下面的代码中,我创建了两个值列表,x 是均匀分布的,y 是
我有一组数据并通过对数正态分布拟合相应的直方图。我首先计算对数正态函数的最佳参数,然后绘制直方图和对数正态函数。这给出了很好的结果: import scipy as sp import numpy a
我正在尝试在 Python 3 中执行两个样本的 KS 测试,以检测分布之间的任何显着差异。为了方便起见,让a和b我要比较的.csv数据列,我干脆跑了下面的“代码”: from scipy.stats
我有一个点数组,我想检查它们是否服从 a=15.5 和 b=7 的 Gamma 分布。我在努力 scipy.stats.kstest(myarray, gamma.pdf(15.5, 0.143))
我在 MATLAB 中使用 Kolmogorov-Smirnov 检验来确定数据矩阵每一列的正态性,然后再执行广义线性回归。一个示例数据向量是: data = [8126,3163,9129,5399
我在 Python spark-ml 中进行正态性测试,发现我认为是一个错误。 这是设置,我有一个标准化的数据集(范围 -1,到 1)。 当我做直方图时,我可以清楚地看到数据不正常: >>> pric
我是一名优秀的程序员,十分优秀!