我一直在阅读有关子进程模块的Python文档(参见此处),它讨论的subprocess.check_output()命令似乎正是我需要的.
但是,当我尝试使用它时,我得到一个它不存在的错误,当我运行dir(subprocess)它时没有列出.
我正在运行Python 2.6.5,我使用的代码如下:
import subprocess
subprocess.check_output(["ls", "-l", "/dev/null"])
Run Code Online (Sandbox Code Playgroud)
有谁知道为什么会这样?
我在这里和其他地方看到过很多关于这个错误的帖子,但是所提出的解决方案似乎都没有相关性.我在Python 2.7.9上,我的路径中有一个R可执行文件,我正在尝试将它安装在不在Windows上的RHEL服务器上.
这是我看到的具体错误.有没有人知道是什么原因导致它或如何解决它?谢谢!
$ pip install rpy2
Downloading/unpacking rpy2
Downloading rpy2-2.5.6.tar.gz (165kB): 165kB downloaded
Running setup.py (path:/tmp/pip_build_my520/rpy2/setup.py) egg_info for package rpy2
Error: Tried to guess R's HOME but no R command in the PATH.
Complete output from command python setup.py egg_info:
Error: Tried to guess R's HOME but no R command in the PATH.
Run Code Online (Sandbox Code Playgroud) 我已经看到许多不同的人发布了这个问题(例如:试图猜测 R 的 HOME 但路径中没有 R 命令。OsX 10.6和在 Mac OSX 10.8.5 上安装 rpy2),但我还没有找到可行的解决方案。
我已经确保在我的终端中安装了 Python-2.7,并且由于我最近通过 RStudio 升级,我认为我的 R 也更新了。但是每次我尝试运行时:
pip install rpy2
Run Code Online (Sandbox Code Playgroud)
或者
easy_install rpy2
Run Code Online (Sandbox Code Playgroud)
我不断收到相同的错误Error: Tried to guess R's HOME but no command 'R' in the PATH。
经过一番谷歌搜索后,我决定尝试下载最新版本的 R (v 3.4.1),尽管我非常确定它已经开始更新了。但是现在我得到了以下错误的庞然大物(我应该注意到我已经浓缩了它):
In file included from ./rpy/rinterface/_rinterface.c:122:
./rpy/rinterface/sequence.c:2173:1: warning: unused function 'ComplexVectorSexp_AsSexp' [-Wunused-function]
ComplexVectorSexp_AsSexp(PyObject *pyfloat) {
^
11 warnings generated.
cc -bundle -undefined dynamic_lookup -arch x86_64 -arch i386 -Wl,-F. build/temp.macosx-10.12-intel-2.7/./rpy/rinterface/_rinterface.o -L/usr/local/lib -Lbuild/temp.macosx-10.12-intel-2.7 -L/usr/local/lib -lpcre …Run Code Online (Sandbox Code Playgroud) 我一直在尝试安装rpy2模块,所以我可以在我的Python脚本中使用R函数,但是在遵循这些页面的建议后我收到错误:
1) 试图猜测R的HOME但在PATH中没有R命令.OsX 10.6
2) http://rpy.sourceforge.net/rpy2/doc-dev/html/overview.html
到目前为止我做了什么:
1)编辑我的路径环境变量以包括"C:\ Program Files\R\R-3.1.0\bin\x64;"
2)创建一个名为"R_HOME"的新环境变量,并将其值设置为"C:\ Program Files\R\R-3.1.0"
3)创建一个名为"R_USER"的新环境变量,并将其值设置为"Hefin"(我的Windows用户名)
然后在我的命令提示符下输入:
easy_install rpy2
Run Code Online (Sandbox Code Playgroud)
据我所知,easy_install已正确设置和安装.
我得到的输出是:
Searching for rpy2
Reading https://pypi.python.org/simple/rpy2/
Best match: rpy2 2.5.5
Downloading https://pypi.python.org/packages/source/r/rpy2/rpy2-2.5.5.tar.gz#md5=c874bebbe775e3cdc926a1da00252c37
Processing rpy2-2.5.5.tar.gz
Writing C:\Users\Hefin\AppData\Local\Temp\easy_install-98mu0_xn\rpy2-2.5.5\setup.cfg
Running rpy2-2.5.5\setup.py -q bdist_egg --dist-dir C:\Users\Hefin\AppData\Local\Temp\easy_install-98mu0_xn\rpy2-2.5.5\egg-dist-tmp-00qpf_z8
The system cannot find the path specified.
Traceback (most recent call last):
File "C:\Python34\lib\site-packages\setuptools-12.0.5-py3.4.egg\setuptools\sandbox.py", line 150, in save_modules
File "C:\Python34\lib\site-packages\setuptools-12.0.5-py3.4.egg\setuptools\sandbox.py", line 191, in setup_context
File "C:\Python34\lib\site-packages\setuptools-12.0.5-py3.4.egg\setuptools\sandbox.py", line 235, in run_setup
File "C:\Python34\lib\site-packages\setuptools-12.0.5-py3.4.egg\setuptools\sandbox.py", line 265, in run
File …Run Code Online (Sandbox Code Playgroud)