我已使用expand.grid
创建并评估了对eval(parse(...))
的调用。
简而言之:
len <- 36
Text <- paste("pos <- expand.grid(",
paste(rep("c(TRUE,FALSE)", len), collapse=","), ")", sep="")
eval(parse(text = Text))
给我
Error in rep.int(rep.int(seq_len(nx), rep.int(rep.fac, nx)), orep) :
invalid 'times' value
In addition: Warning message:
In rep.int(rep.int(seq_len(nx), rep.int(rep.fac, nx)), orep) :
NAs introduced by coercion
而不是变量len
中TRUE
/ FALSE
的{{1}}个组合。
我忽视了一些简单的事情,或者可能不是......?
答案 0 :(得分:10)
正如我在评论中所说,这与eval
或parse
无关。错误发生在expand.grid
。问题是R的最大向量长度是2 ^ 31-1而rep.int
正在尝试创建一个2 ^ 36长度的向量。