如何保存按顺序增加的循环的输出

时间:2016-11-22 00:48:59

标签: r loops for-loop

所以我试图将循环的输出保存为5乘5而不是1乘1。 我的代码是:

for ( i in seq(40,200,by=5)){
  test=StatArb(Col,Bog,i,100,1.1)
  print(test[2])
}

我创建了function StatArb,输出是6个元素的列表。我想要第二个是单个数字。而不是打印结果,我希望它将其存储在矢量中。我已经尝试创建一个向量并用测试结果替换每个i条目,但它不起作用。代码是:

vector = rep(0,32)
for ( i in seq(40,200,by=5)){
      test=StatArb(Col,Bog,i,100,1.1)
      vector[i] = test[i]
    }

但由于某种原因,它在循环中将矢量从32扩展到200,所以我得到了很多Null数。

1 个答案:

答案 0 :(得分:2)

怎么样:

sapply(seq(40,200,5), function(i) { StatArb(Col,Bog,i,100,1.1)[2]})