R: Repeat operation n times and store in vector
我有以下代码从 8 个观察值中随机抽取 3 个样本,然后计算变异系数 (CV)。
1
2 3 4 5 6 7 8 9 10 |
d <- c(4.34238,4.32101,4.35023,4.44773,4.24697,4.08944,4.28733,4.46353)
# Random sampling with replacement: meanX <- mean(X) |
问题是,我想将其引导 10000 次并将值存储在向量中或导出为 csv,以便我以后可以计算平均 CV。
我发现代码 (i) 用于重复操作 n 次; (ii) 用于单独导出值。我怎么一起做这个?
谢谢。
额外的问题…
这是一种更有效的方法:-
(i) 每次随机采样 3/8 观察值,计算 CV,存储值?
(ii) 生成10000组采样观测值,计算CV,存储值?
我已经在向量
1
2 3 4 5 6 7 8 9 10 11 12 13 14 |
d <- matrix(rnorm(100000), ncol=2)
n_bootstraps <- 50 for (i in 1:n_bootstraps){ write.csv(x = cvX_vec, file ="./blah.csv") |
您可以使用
1
2 3 4 5 6 7 8 |
myfun <- function(){
i <- sample(1:8, 3, replace=TRUE) X <- d[i,2] c(meanX = mean(X), sdX = sd(X), cvX = sd(X)/mean(X) * 100) result <- replicate(5, myfun) |
这可以使用
write.table(result, “result.csv”)
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/268730.html