qoh*_*eth 27 stack-overflow recursion r
我写了一个表单的递归函数
foo=function(vars,i=2){
  **do something with vars**
  if(i==length(vars)){
    return(**something**)
  }else{
    foo(vars,i+1)
  }
}
length(vars) 是1500左右.当我执行它时,我得到了错误
Error: evaluation nested too deeply: infinite recursion / options(expressions=)?
Error during wrapup: evaluation nested too deeply: infinite recursion / options(expressions=)?
很公平,所以我增加了
options(expressions=10000)
然后它工作.
但是,当我读到的帮助文档options有关expressions=,我只是不明白它在说什么.此外,它表明
...如果你增加它,你可能还想用更大的保护堆启动R; ...
所以有人可以告诉我发生了什么,如果我应该expressions像我一样增加参数,以及我是否应该修改其他内容.