将两个词典合并为一个数据帧

时间:2017-11-29 20:33:06

标签: python pandas dictionary

这是两个词典:

monkeydict = {'16:43': 1, '16:44': 1, '16:49': 3}
pigdict = {'16:41': 3, '16:44': 2, '16:51': 3}

这是所需的数据框:

time,monkeydict,pigdict
16:41,,3
16:43,1,
16:44,1,2
16:49,3,
16:51,,3

2 个答案:

答案 0 :(得分:4)

pd.DataFrame({'monkeydict':pd.Series(monkeydict),'pigdict':pd.Series(pigdict)})
Out[879]: 
       monkeydict  pigdict
16:41         NaN      3.0
16:43         1.0      NaN
16:44         1.0      2.0
16:49         3.0      NaN
16:51         NaN      3.0

或(请注意,您需要在创建数据框后重命名列)

pd.DataFrame([monkeydict,pigdict]).T
Out[887]: 
         0    1
16:41  NaN  3.0
16:43  1.0  NaN
16:44  1.0  2.0
16:49  3.0  NaN
16:51  NaN  3.0

答案 1 :(得分:3)

In [9]: (pd.Series(monkeydict).to_frame('monkey')
           .join(pd.Series(pigdict).to_frame('pig'), how='outer'))
Out[9]:
       monkey  pig
16:41     NaN  3.0
16:43     1.0  NaN
16:44     1.0  2.0
16:49     3.0  NaN
16:51     NaN  3.0