我在 R 中有以下 for 循环:
v = c(1,2,3,4)
s = create.some.complex.object()
for (i in v){
print(i)
s = some.complex.function.that.updates.s(s)
}
# s here has the right content.
不用说,这个循环在 R 中非常慢。我尝试用函数式编写它:
lapply(v, function(i){
print(i)
s = some.complex.function.that.updates.s(s)
})
# s wasn't updated.
但这不起作用,因为s
它是按值传递的,而不是按引用传递的。我只需要最后一次迭代的结果,而不是所有的中间步骤。如何制定 R 风格的第一个循环?
穆龙