将rpy模块导入Python
我正在尝试在python2.6.6中导入rpy1.0.3模块,使用的代码是:
from rpy import *
但是我遇到了这个错误:
File "C:\Python26\lib\site-packages\rpy.py", line 58, in <module>
RVERSION = rpy_tools.get_R_VERSION(RHOME)
File "C:\Python26\lib\site-packages\rpy_tools.py", line 103, in get_R_VERSION
raise RuntimeError("Couldn't obtain version number from output\n"
RuntimeError: Couldn't obtain version number from output
of `R --version'.
根据rpy的文档,我已经设置了一个环境变量,里面包含了我R程序目录的文件路径,但它似乎无法识别我安装的R版本(我安装的是2.9.0)。有什么想法吗?谢谢!
1 个回答
1
setup.py这个脚本在调用rpy_tools.py这个脚本,以便获取版本号。它会在R --version的输出中查找一个特定的模式:
version = re.search(" +([0-9]\.[0-9]\.[0-9])", output)
不过,现在R的版本是2.13.0,所以它找不到一个两位数的版本号。你需要把rpy_tools.py中的那一行替换成:
version = re.search(" +([0-9]+\.[0-9]+\.[0-9]+)", output)
你还需要删除setup.py创建的rpy_tools.pyc文件。