可以
自动化它(使用循环,函数或其他东西)吗?目前,我正在"手动"完成所有工作(换句话说,一步一步),这对我来说很烦人。我使用 kstest()。
考虑原假设 H0 : X ∼ N(0, 1)。
对于不同的 μ 值(例如 μ = 0, 0.25, 0.50, 0.75, 1,),以及不同的 n 值(例如 n = 25, 50, 100),请执行以下步骤:
- 从 N(μ, 1) 生成 1000 个样本。
- 对于每个样本,检验假设 H0 : X ∼ N(0, 1)。
- 获取每种情况下的拒绝频率。
- 当原假设为真时,检查水平是否近似良好(例如,取α = 0.10、0.05、0.01)。
非常感谢。
我写了一个函数来获取接受零假设的数字比例,当你输入 $\mu$、n 和 $\alpha$ 时:
library(stats)
anxo <- function(mu, n, alpha){
prop <- 0
for (i in 1:n) {
x <- rnorm(1000, mu, 1)
if (ks.test(x, pnorm)$p.value > alpha) {
prop <- prop + 1
}
}
return(prop/n)
}