R编程:循环后保存三维输出

时间:2015-05-15 14:21:02

标签: r list loops save dataframe

我是R的新手,我想在循环后保存输出

 for (i in 1:5) {
    for (d in 1:10) {
     fonction1
     fonction2
     fonction3
   }
  }

最后我想有一个列表 - &gt;包含5个列表 - &gt;包含1 * 10数据帧 - &gt;包含某些数字* 3的数字数据。 (我不知道如果我说得对,我想要的是:就像在Matlab中,有一个1 * 5结构 - &gt;包含五个1 * 10结构 - &gt;包含一定数量* 3数字数据)。< / p>

提前致谢

2 个答案:

答案 0 :(得分:0)

看起来你正在照顾以下内容:

out <- list()
for (i in 1:5) {
    outList <- list()
    for (d in 1:10) {
     outVect <- c()
     outVect[1] <- fonction1()
     outVect[2] <- fonction2()
     outVect[3] <- fonction3()
     outList[[d]] <- outVect
   }
   out[[i]] <- outList
  }

然后你可以看看:

str(out) 

查看答案的结构

答案 1 :(得分:0)

试试这个:

lst <- lapply(1:5, function(i) {
  lapply(1:10, function(d) {
    data.frame(function1(),
               function2(),
               function3())
  })
})

假设function1function2function3都返回等长向量,上面的代码应该生成您想要的对象。您可以像在i循环代码中使用dfor一样使用{{1}}和{{1}}。