高效创建 axb 扩展网格内存

h.l*_*l.m 5 memory memory-management r data.table

可能是一个非常简单的问题,但我希望能够设置变量,ab能够从R中的expand.grid创建data.frame或data.table。

例如,如果a=5,b=3

我希望我能够得到相同的输出

expand.grid(seq(0,1,by=1/5),seq(0,1,by=1/5), seq(0,1,by=1/5))
Run Code Online (Sandbox Code Playgroud)

如果a=3b=4我会得到

expand.grid(seq(0,1,by=1/3), seq(0,1,by=1/3), seq(0,1,by=1/3), seq(0,1,by=1/3))
Run Code Online (Sandbox Code Playgroud)

b是列数......并且a是间隔大小。

谢谢

编辑

理想情况下,我会输入a大约 100 和b大约 30 的数字,是否有一些快速且内存高效的方法可以生成......也许是某种形式data.table

mne*_*nel 4

像这样的东西应该可以工作,使用replicatedo.call

exgrid <- function(a, b){
  do.call(expand.grid,replicate(b , seq(0,1,by = 1/a), simplify = FALSE))
}
Run Code Online (Sandbox Code Playgroud)