Python convert_to_r_数据帧模块对象没有属性

Python convert_to_r_数据帧模块对象没有属性,python,pandas,rpy2,Python,Pandas,Rpy2,我对python和学习熊猫还不熟悉。我想将pandas数据帧“datframe”转换为R样式的数据帧(稍后使用rpy2)。为此,我的代码中有以下两行代码: import pandas.rpy.common as com r_dataframe = com.convert_to_r_dataframe(datframe) 第一个命令执行完毕,但出现以下错误: Traceback (most recent call last): File "", line 1, in r_dat

我对python和学习熊猫还不熟悉。我想将pandas数据帧“datframe”转换为R样式的数据帧(稍后使用rpy2)。为此,我的代码中有以下两行代码:

import pandas.rpy.common as com  
r_dataframe = com.convert_to_r_dataframe(datframe)
第一个命令执行完毕,但出现以下错误:

Traceback (most recent call last): File "", line 1, in r_dataframe = com.convert_to_r_dataframe(datframe) AttributeError: 'module' object has no attribute 'convert_to_r_dataframe' " 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 r_dataframe=com.convert_to_r_dataframe(datframe) AttributeError:“模块”对象没有属性“将\u转换为\u r\u数据帧” 我不知道为什么会发生这种情况以及如何对其进行故障排除 作为pd进口熊猫 这可能是问题所在吗

我使用的是python 2.7.3、rpy2-2.3.2和2.15.3,这对我很有用:

>>> import rpy2
>>> import pandas as pd
>>> import pandas.rpy.common as com
>>> rpy2.__version__
'2.3.1'
>>> pd.__version__
'0.10.0'
>>> datframe = pd.DataFrame({'a' : [1, 2, 3], 'b' : [3, 4, 5]})
>>> r_df = com.convert_to_r_dataframe(datframe)
>>> r_df
<DataFrame - Python:0x105b12710 / R:0x7fa8131d7918>
[IntVector, IntVector]
  a: <class 'rpy2.robjects.vectors.IntVector'>
  <IntVector - Python:0x105b12ab8 / R:0x7fa8131d7838>
[       1,        2,        3]
  b: <class 'rpy2.robjects.vectors.IntVector'>
  <IntVector - Python:0x105b12950 / R:0x7fa8131d7800>
[       3,        4,        5]
导入rpy2 >>>作为pd进口熊猫 >>>将pandas.rpy.common作为com导入 >>>rpy2.\u版本__ '2.3.1' >>>pd.\u版本__ '0.10.0' >>>datframe=pd.DataFrame({'a':[1,2,3],'b':[3,4,5]}) >>>r_df=com.convert_to_r_数据帧(datframe) >>>r_df [IntVector,IntVector] a: [ 1, 2, 3] b: [ 3, 4, 5]
不同的rpy2版本..

>>>导入rpy2>>>导入熊猫作为pd>>>导入pandas.rpy.common作为com>>>>>>>>>rpy2.\uuuuu版本\uuuuuuuuuu'2.3.2'>>>pd.\uuuuu版本\uuuuuuuuuuuu'0.7.0'我的早期pd版本会有问题吗?如何升级到最新版本?值得一试,您可以使用pip:
sudo pip安装--升级熊猫
(编辑:事实上,从rpy2-2.3.3中,您可以选择使用automagic转换器,该转换器将调用
将\u转换为\u-R\u数据帧
在许多(甚至大多数)情况下是不必要的案例。
从rpy2.robjects导入pandas2ri;pandas2ri.activate()
应该是您所需要的全部(只要调用R函数,pandas数据帧就会隐式转换)。