Python 如何从R到熊猫获取数据

Python 如何从R到熊猫获取数据,python,r,pandas,rpy2,Python,R,Pandas,Rpy2,在jupiter笔记本中,我创建了一些类似R的二维列表 %%R first <- "first" second <- "second" names(first) <- "first_thing" names(second) <- "second_thing" x <- list() index <- length(x)+1 x[[index]] = first x[[index +1]] = second %%R 首先,只需对列表向量进行切片即可: %R

在jupiter笔记本中,我创建了一些类似R的二维列表

%%R
first <- "first"
second <- "second"

names(first) <- "first_thing"
names(second) <- "second_thing"

x <- list()
index <- length(x)+1
x[[index]] = first
x[[index +1]] = second
%%R

首先,只需对
列表向量进行切片即可:

%Rpull x
pd.DataFrame(data=[i[0] for i in x], columns=['X'])

如果您想要一本字典:

dict([[i,j[0]] for i,j in enumerate(x)])
{0: 'first', 1: 'first'}

因为您创建了一个R列表(而不是,比如说,一个数据帧), 返回的Python对象是一个
ListVector

R列表可以有重复的名称,这使得转换为
dict
无法保证安全

如果你感到幸运,想要一个口述,这是相当简单的。 例如:

 from rpy2.robjects.vectors import ListVector
 l = ListVector({'a':1, 'b':2})
 d = dict(l.items())

我想得到关键值,而不是X,我如何实现这一点?我想处理names()属性?e、 g.my i是一个LabelWorkPi\n 0.xx_数值。您对dict的建议非常有效,只是参数的“名称”丢失了。我怎么能保留这些?但这改变了顺序?因为名称,例如名称(first),关键是如果您枚举i,j,j包含包含标签的列表元素(rpy2.floatVector)。结果是,j.names返回名称,str.split(“”)[1]传递给我所需的值。实际上,将R转换为数据帧会有很大帮助。但是名称有问题。confMatrix