I've created and evaluated a call to expand.grid by using eval(parse(...)).
In short:
len <- 36
Text <- paste("pos <- expand.grid(",
paste(rep("c(TRUE,FALSE)", len), collapse=","), ")", sep="")
eval(parse(text = Text))
Gives me
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
as opposed to len number of combinations of TRUE/FALSE in the variable pos.
I am overlooking something simple, or maybe not...?
As I said in my comment, this has nothing to do with eval or parse. The error is in expand.grid. The problem is that R's maximum vector length is 2^31-1 and rep.int is trying to create a 2^36 length vector.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With