让我说我有以下命令,如下所示:
{1: {2017: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
2016: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]},
4: {2017: [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0],
2016: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}}
我做出的最接近的尝试会将2017年和2016年更改为这样的不同列:
key 2016 2017
1 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
4 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]
我想要的更像是这样:
key value
1 {2017: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],2016: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}}
4 {2017: [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0],2016: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}
答案 0 :(得分:0)
您可以使用以下命令:
df = pd.DataFrame(your_dictionary).T.apply(dict,1)
df
>>1 {2016: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 2017: [...
4 {2016: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 2017: [...
答案 1 :(得分:0)
就目前而言,我可以像这样通过列表理解来实现
pd.DataFrame([{'key':key,'value':value} for key,value in dict_year.items()])
另一个答案将不胜感激,因为我需要比较自从处理非常大的数据以来使用的资源和时间