我试图使用系统2 R里面调用一个简单的Python脚本()。 我看了一些资料,我发现含糊,说如果使用太多的'内存,它不会工作。
如果我打开一个大的数据集,并使用一些信息,它使用作为参数传递到系统2(),如果我手动单击“重新启动R”呼叫Rstudio它只会工作。
我想要的是:
df <- read.csv('some_large_file.csv')
###extracting some info called 'args_vec'
for(arg in args_vec){
system2('python', args)
}
这将无法正常工作的。 for循环简单地过去了。
我需要的:
df <- read.csv('some_large_file.csv')
###extracting some info called 'args_vec'
###something that 'restarts' R
for(arg in args_vec){
system2('python', args)
}
这个答案并不完全得到我想要的东西。 也就是说,它不适合我内Rstudio工作,它调用“系统”(其中介绍了同样的问题在这种情况下,“系统2”)。 事实上,当我把我的Rprofile.site文件上面提到的答案,它只是立即拍板rstudio:
我想建议作为普通函数(而不是使用“makeActiveBinding”,它也不太工作。
##restart R in r session -- doesn't work
makeActiveBinding("refresh", function() { system("R --save"); q("no") }, .GlobalEnv)
##nor did this:
refresh <- function() { system("R --save"); q("no") }
我尝试了一些上面这两个选项的变化,但这需要很长什么感觉就像一个简单的问题。 有很多我还不知道有关的启动过程,“makeActiveBinding”是一个有点神秘。 任何人都可以点我在正确的方向?