我试图通过Enthought Canopy使用Python 2.7.6来使用IPython笔记本的rmagic扩展。
当我尝试以下示例时:
import numpy as np
import pylab
X = np.array([0,1,2,3,4])
Y = np.array([3,5,4,6,7])
pylab.scatter(X, Y)
%Rpush X Y
%R lm(Y~X)$coef
我收到错误:
AttributeError Traceback (most recent call last)
<ipython-input-7-96dff2c70ba0> in <module>()
1 get_ipython().magic(u'Rpush X Y')
----> 2 get_ipython().magic(u'R lm(Y~X)$coef')
…
/Users/hrob/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/IPython/extensions/rmagic.pyc in eval(self, line)
212 res = ro.r("withVisible({%s})" % line)
213 value = res[0] #value (R object)
--> 214 visible = ro.conversion.ri2py(res[1])[0] #visible (boolean)
215 except (ri.RRuntimeError, ValueError) as exception:
216 warning_or_other_msg = self.flush() # otherwise next return seems to have copy of error
AttributeError: 'module' object has no attribute 'ri2py'
我找不到其他人遇到同样问题并且不了解自己解决问题的人。虽然convert.py中没有ri2py的定义 我最初安装了Anaconda,并通过它运行python笔记本,结果完全相同。
rpy2(版本2.4.0)安装成功,但是当我测试它时,我得到1个预期的失败,如下所示:
python -m 'rpy2.robjects.tests.__init__'
…
testNewWithTranslation (testFunction.SignatureTranslatedFunctionTestCase) ... expected failure
我不知道这是否相关。
任何人都可以建议问题可能是什么以及我如何解决它?我使用兼容的python,R等版本是否需要重新安装/更新?
答案 0 :(得分:23)