具有MultiIndex的Pandas数据框

时间:2020-10-23 19:20:53

标签: python pandas multi-index

我有一本带有元组键的字典,我想制作具有多索引的数据框:

dct = {('a', 'b'): 1, ('a', 'c'): 2}
pd.DataFrame(dct, index=['x'])

它返回: enter image description here

但是当我放入字典列表时:

dct = {('a', 'b'): 1, ('a', 'c'): 2}
pd.DataFrame([dct, dct], index=['x', 'y'])

它返回: enter image description here

如何使用此代码嵌套索引?

即它应该返回: enter image description here

1 个答案:

答案 0 :(得分:1)

您根本无法使用字典列表来达到目的。如果只是重复字典,熊猫会自动执行此操作:

dct = {('a', 'b'): 1, ('a', 'c'): 2}
df = pd.DataFrame(dct, index=['x', 'y'])

print(df)
   a   
   b  c
x  1  2
y  1  2

如果要在数据帧的每一行中使用不同的值,则应在字典中这样做:

dct = {('a', 'b'): [1, 3], ('a', 'c'): [2, 4]}
df = pd.DataFrame(dct, index=['x', 'y'])

print(df)
   a   
   b  c
x  1  2
y  3  4