将(MultiIndex)Dataframe转换为dicts列表

时间:2017-04-19 17:38:56

标签: python pandas

我有一个多索引数据框:

                       C
 A         B
25        58        16.0
          59       135.0
          60        36.0

我想将其转换为dicts / objects列表:

[
     {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}}
]

这很接近,但我不想在最终的dict中包含索引。

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

1 个答案:

答案 0 :(得分: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}]