R:复制样本向量而不只是样本
R: Replicate Vector of Sample Instead of Just a Sample
我想使用 R
对 10
的样本量做我做的事情,对样本集做同样的事情
我有什么
我得到了下面的 R
复制 Shapiro 正态性测试的代码
sim = replicate(1000,shapiro.test(rnorm(10)))
## rejections go like, assuming an alpha of 0.05 :
table(sim["p.value",] < 0.05)
假设 alpha 为 0.05,拒绝结果如下:
错误
正确
948
52
我想要的
我不想只对 10
的样本量进行计数测试,而是希望它在样本向量(例如 (10, 20,50, 100))上进行,结果如下:
.
错误
正确
10
948
52
20
970
30
50
956
44
100
944
36
使用循环 - sapply
并在 rnorm
中传递这些值
out <- t(sapply(c(10, 20, 50, 100), function(x)
table(replicate(1000, shapiro.test(rnorm(x)))["p.value",] < 0.05)))
row.names(out) <- c(10, 20, 50, 100)
-输出
out
FALSE TRUE
10 953 47
20 942 58
50 960 40
100 951 49
我想使用 R
对 10
的样本量做我做的事情,对样本集做同样的事情
我有什么
我得到了下面的 R
复制 Shapiro 正态性测试的代码
sim = replicate(1000,shapiro.test(rnorm(10)))
## rejections go like, assuming an alpha of 0.05 :
table(sim["p.value",] < 0.05)
假设 alpha 为 0.05,拒绝结果如下:
错误 | 正确 |
---|---|
948 | 52 |
我想要的
我不想只对 10
的样本量进行计数测试,而是希望它在样本向量(例如 (10, 20,50, 100))上进行,结果如下:
. | 错误 | 正确 |
---|---|---|
10 | 948 | 52 |
20 | 970 | 30 |
50 | 956 | 44 |
100 | 944 | 36 |
使用循环 - sapply
并在 rnorm
out <- t(sapply(c(10, 20, 50, 100), function(x)
table(replicate(1000, shapiro.test(rnorm(x)))["p.value",] < 0.05)))
row.names(out) <- c(10, 20, 50, 100)
-输出
out
FALSE TRUE
10 953 47
20 942 58
50 960 40
100 951 49