多次执行函数并创建带结果的矩阵

时间:2016-05-08 17:13:22

标签: r matrix apply bootstrapping

以下代码采用向量V1并创建一个名为BV1的自举样本。我想运行那次,并将所有BVi矢量放在矩阵MV中。如果可能,使用apply系列的函数而不是for循环。

V1 <- c(0.18, 0.2, 0.24, 0.35, -0.22, -0.17, 0.28, -0.28, -0.14, 0.03, 0.87, -0.2, 0.06, -0.1, -0.72, 0.18, 0.01, 0.31, -0.36, 0.61, -0.16, -0.07, -0.13, 0.01, -0.09, 0.26, -0.14, 0.08, -0.62, -0.2, 0.3, -0.21, -0.11, 0.05, 0.06, -0.28, -0.27, 0.17, 0.42, -0.05, -0.15, 0.05, -0.07, -0.22, -0.34, 0.16, 0.34, 0.1, -0.12, 0.24, 0.45, 0.37, 0.61, 0.9, -0.25, 0.02)
BV1 <- sample(V1, length(V1), replace=TRUE) 

然后,我将使用该矩阵计算自举摘要统计信息的分布。谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

我们可以使用replicate重复sample'n'次,并输出为matrix

replicate(4, sample(V1, length(V1), replace=TRUE))

如果我们查看replicate

  

function(n,expr,simplify =“array”)       sapply(integer(n),eval.parent(substitute(function(...)expr)),          简化=简化)

它使用sapply(因此涵盖了OP对apply系列函数的需求)