JPC*_*JPC 14 python error-handling installation r
我无法在python中运行rpy2.
用这个代码
import rpy2.robjects as robjects
Run Code Online (Sandbox Code Playgroud)
以下是完整的例外情况:
RuntimeError:未定义R_USER.
文件"d:\ py\r \n\r.python.py",第1行,in
import rpy2.robjects as robjects
File "c:\Python27\Lib\site-packages\rpy2\robjects\__init__.py", line 17, in <module>
from rpy2.robjects.robject import RObjectMixin, RObject
File "c:\Python27\Lib\site-packages\rpy2\robjects\robject.py", line 5, in <module>
rpy2.rinterface.initr()
Run Code Online (Sandbox Code Playgroud)
我正在使用窗口xp win32这是我的位置:
C:\Python27\Lib\site-packages\rpy2\robjects\robject.py
C:\Program Files\R\R-2.15.0\bin\i386\R.exe
C:\Python27\python.exe
Run Code Online (Sandbox Code Playgroud)
小智 19
这是我修复我的R包版本3.0.2 python版本2.7平台ipython笔记本的方式.
更改R计算机的路径 - >属性 - >高级和系统设置 - >环境变量
在用户变量字段中添加C:\Program Files\R\R-3.0.2\bin\x64
(我的系统是windows 64bit)到路径
在系统变量字段中添加两个新变量
R_HOME c:\program files\r\r-3.0.2
R_USER C:\Users\"your user name"\Anaconda\Lib\site-packages\rpy2
Len*_*aná 11
如果你想将rpy2用于Python,但你也想继续使用你的RStudio,不要忘记将RStudio添加到你的路径中,否则你会遇到一些路径问题.
您可以根据@ user3758274更改路径:
更改R计算机的路径 - >属性 - >高级和系统设置 - >用户变量字段中的环境变量add
C:\Program Files\R\R-3.0.2\bin\x64
(我的系统是windows 64bit)到路径在系统变量字段中添加两个新变量
Run Code Online (Sandbox Code Playgroud)R_HOME c:\program files\r\r-3.0.2 R_USER C:\Users\"your user name"\Anaconda\Lib\site-packages\rpy2
但是,然后将RStudio添加到您的R_USER系统变量中,这样您就可以得到:
R_USER C:\Program Files\RStudio\bin;C:\Users\"your user name"\Anaconda\Lib\site-packages\rpy2
Run Code Online (Sandbox Code Playgroud)
结合@laven_qa和@ user3758274的答案,这对我有用:
# installing steps after downloading .whl from http://www.lfd.uci.edu/~gohlke/pythonlibs/#rpy2
import pip
pip.main(["install", "C:/Users/YOUR_USERNAME/Downloads/rpy2-2.8.6-cp36-cp36m-win_amd64.whl"]) # Path to the file that was downloaded from the website above
# setting temporary PATH variables
import os
os.environ['R_HOME'] = 'C:\Program Files\Microsoft\R Open\R-3.4.0' #path to your R installation
os.environ['R_USER'] = 'C:\ProgramData\Anaconda3\Lib\site-packages\rpy2' #path depends on where you installed Python. Mine is the Anaconda distribution
# importing rpy2
import rpy2.robjects as robjects
# test : evaluating R code
robjects.r('''
# create a function `f`
f <- function(r, verbose=FALSE) {
if (verbose) {
cat("I am calling f().\n")
}
2 * pi * r
}
# call the function `f` with argument value 3
f(3)
''')
# returns :
> R object with classes: ('numeric',) mapped to:
> <FloatVector - Python:0x000000000C260508 / R:0x000000000F2872E8>
> [18.849556]
Run Code Online (Sandbox Code Playgroud)
OH,nvm ..我修好了..这就是我怎么做的,只是因为任何人都有同样的问题.我必须指定PYTHONPATH到存储的rpy2.robjects位置
详细信息如下:我的电脑>系统属性>高级>环境变量:
在系统变量下创建或编辑您的
Variable name : PYTHONPATH
Variable value : C:\Python27\Lib\site-packages\rpy2;C:\Program Files\R\R-2.15.0\bin\i386;C:\Python27\Lib\site-packages\rpy2\robjects
Run Code Online (Sandbox Code Playgroud)
这应该工作,享受.
小智 6
对于即时和临时解决方案,您可以在导入rpy2之前添加以下代码:
import os
os.environ['R_HOME'] = 'C:/program files/R-3.3.1'
Run Code Online (Sandbox Code Playgroud)
值得注意的一点是,你应该在路径中使用反斜杠而不是斜杠.
归档时间: |
|
查看次数: |
18355 次 |
最近记录: |