2017-04-19 66 views
3

我有一个多指标数据框的列表:转换(多指标)数据帧到类型的字典

     C 
A   B 
25  58  16.0 
      59  135.0 
      60  36.0 

,我要转换为类型的字典/对象的列表:

[ 
    {A: 25, B: 58, C: 16}, 
    {A: 25, B: 59, C: 135}, 
    {A: 25, B: 60, C: 36} 
] 

我能重置索引df.reset_index

  A  B  C 
0   25  58 16.0 
1   25  59 135.0 
2   25  60 36.0 

,并使用df.to_dict('index')得到这个:

[ 
    {0: {A: 25, B: 58, C: 16}}, 
    {1: {A: 25, B: 59, C: 135}}, 
    {2: {A: 25, B: 60, C: 36}} 
] 

这是接近,但我不想在结果字典中包含索引。

有没有简单的方法来实现这一点?

回答

6

使用to_dictrecords

df.reset_index().to_dict('records') 

[{'A': 25.0, 'B': 58.0, 'C': 16.0}, 
{'A': 25.0, 'B': 59.0, 'C': 135.0}, 
{'A': 25.0, 'B': 60.0, 'C': 36.0}] 
+0

哈。我曾尝试过[文档](http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_dict.html)中的'list',并且由于某种原因从未见过'records'。这是固定的。 –

相关问题