我对R很新,并写了一个双重for循环,它完全符合我的要求(具有一定块长度的索引号的块引导)。但是,我无法在矩阵中存储print(x_sample)显示的内容。 我尝试了lapply以及我在这里找到的所有其他东西,但我自己无法解决问题。我真的希望你能提供帮助。 非常感谢提前
Here is my code:
x <- c(1:1060,1,2,3)
x_sample <- numeric(119*4)
for (i in 1:3){
for (j in 0:119){
idx <- sample(1:1060,1,replace=TRUE)
x_sample[(4*j+1):(4*j+4)] <- x[(idx):(idx+3)] }
print(x_sample)}
答案 0 :(得分:2)
你的意思是这样的吗?:
values <- c(1:1060, 1, 2, 3)
m <- sapply(sample(1:1060, 360, replace=TRUE), function(idx)values[(idx):(idx+3)])
答案 1 :(得分:1)
在循环之前创建一个矩阵,然后填充矩阵:
x <- c(1:1060,1,2,3)
mat <- matrix(nrow=480, ncol = 3)
for (i in 1:3){
for (j in 0:119){
idx <- sample(1:1060,1,replace=TRUE)
mat[(4*j+1):(4*j+4), i] <- x[(idx):(idx+3)] }
print(mat)}