如何在 R 中制作 3 维数据列表

how to make a list for 3 dimensional data in R

我有一个与 list() 有关的问题
我需要使用 3 个 for 循环来处理数据,就像这样

for(i in 1:10){  #it is number of data group
 for(j in 1:5){  #it is number of sub-data group
  for(k in 1:2){ #it is number of sub-data group
     1.data process<br>
     2.just want to make a list within information of i, j ,k

      mylist[i][j][k]

     #i tested some methods like this, but it does not work well<br>
 }
 }
}

你能给我一些关于这个问题的想法或解决方案吗? 谢谢

目前还不清楚究竟需要什么,但非原子对象的多维集合可以像这样完成:

lst <- lapply(1:10, function(i) {
  lapply(1:5, function(k) {
    lapply(1:2, function(k) {
      # do something here
      lm(mpg ~ cyl, data = mtcars)
    })
  })
})

现在访问第 [i,j,k] 个元素,例如获取刚刚创建的线性模型的摘要:

i <- 3; j <- 2; k <- 1
summary(lst[[i]][[j]][[k]])

如果您绝对必须使用 for 循环创建它(不推荐),建议您预先填充一个空结构并填充空洞:

lst <- replicate(10, replicate(5, replicate(2, NULL, simplify = FALSE), simplify = FALSE), simplify = FALSE)
for (i in 1:10) {
  for (j in 1:5) {
    for (k in 1:2) {
      lst[[i]][[j]][[k]] <- ...
    }
  }
}