假设我有两个带共享和非共享密钥的词典:
d1 = {'a': 1, 'b': 2}
d2 = {'b': 4, 'c': 3}
我如何将它们连接成一个类似于单热编码的数据框?
a b c
1 2
4 3
答案 0 :(得分:2)
如果你想要与你所展示的结果相同......
pd.DataFrame([d1, d2], dtype=object).fillna('')
a b c
0 1 2
1 4 3
如果您想用零填充缺失值并保留int
dtype
...
pd.concat(dict(enumerate(map(pd.Series, [d1, d2])))).unstack(fill_value=0)
a b c
0 1 2 0
1 0 4 3
或正如OP在评论中所指出的那样
pd.DataFrame([d1, d2], dtype=object).fillna(0).astype(int)
a b c
0 1 2 0
1 0 4 3