【发布时间】:2020-06-26 02:56:09
【问题描述】:
有人能解释一下为什么这两个结果不同吗?
我试图将多键字典理解转换为 DataFrame。
第一种方法:
Dict1={(i,j):i+j for i in range(2) for j in range(2)}
print(pd.DataFrame.from_dict(Dict1, orient="index").reset_index())
结果:数据框有一个索引(应该有两个)
index 0
0 (0, 0) 0
1 (0, 1) 1
2 (1, 0) 1
3 (1, 1) 2
第二种方法:
Dict2={(i,j):{"value":i+j} for i in range(2) for j in range(2)}
print(pd.DataFrame.from_dict(Dict2, orient="index").reset_index())
结果:数据框有两个索引
level0 level_1 value
0 0 0 0
1 0 1 1
2 1 0 1
3 1 1 2
我设法使用第二种方法做到了,但为什么第一种方法不起作用?为什么它没有将字典键保留为两个不同的索引?
【问题讨论】:
标签: python pandas dataframe dictionary