从列表字典创建MultiIndex数据框

时间:2020-01-30 15:22:31

标签: python pandas multi-index

我想创建一个空的MultiIndex DataFrame,其中第一级列包含字典键,第二级列包含每个键的值。

示例:

dictionary = {"Col 1": ["foo", "bar"], "Col 2": ["one", "two"]}

enter image description here

1 个答案:

答案 0 :(得分:2)

您可以为每个键和值展平字典,然后使用pd.MultiIndex.from_arrays,然后使用swaplevel

d = {i:k for k,v in dictionary.items() for i in v}
df = (pd.DataFrame(columns=pd.MultiIndex.from_arrays((d.keys(),d.values())))
      .swaplevel(axis=1).rename_axis(columns=['first','second']))

#df.to_excel(...)

enter image description here