首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用os.system()或子进程()通过Python运行Rscript

使用os.system()或子进程()通过Python运行Rscript
EN

Stack Overflow用户
提问于 2015-02-14 10:43:38
回答 2查看 2.4K关注 0票数 0

我面临着使用os.system()或子进程()通过Python运行Rscript的问题。

使用os.system()通过python运行命令对我来说一般都很好(例如,对于gdalwarp.exe),但对Rscript.exe则不起作用。

我唯一能看到的区别是路径上的空格。

避免路径中的空格问题很容易在CMD窗口中通过在引号中放置路径来克服。执行以下命令是成功的。

代码语言:javascript
运行
复制
"C:/Program Files/R/R-3.0.2/bin/Rscript.exe" "D:/.../otsu_Script.R"

但我被Python困住了。到目前为止,我对python所做的尝试是:

代码语言:javascript
运行
复制
os.system("C:/Program Files/R/R-3.0.2/bin/Rscript.exe" "D:/.../otsu_Script.R")
os.system(r"C:/Program Files/R/R-3.0.2/bin/Rscript.exe" "D:/.../otsu_Script.R")
os.system(r'"C:/Program Files/R/R-3.0.2/bin/Rscript.exe" "D:/.../otsu_Script.R"')
subprocess.call([r'C:/Program Files/R/R-3.0.2/bin/Rscript.exe', r'D:/.../otsu_Script.R'])

有人看到我做错什么了吗?预先谢谢你,艾克

EN

Stack Overflow用户

回答已采纳

发布于 2015-02-15 10:02:23

在对这样一个简单的问题有了理智之后。我决定将RStatistics重新安装到没有空格或点的路径上,比如:C:/R/bin/Rscript.exe

现在,subprocess.call(["C:/R/bin/Rscript.exe", "D:/otsu_Script.R"] )os.system("C:/R/bin/Rscript.exe D:/otsu_Script.R")工作得很好。两天前应该试过的..。

..。但现在我是一只快乐的猴子了

票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28514769

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档