我有两个数据框。
print(df1)
key value
0 A 2
1 B 3
2 C 2
3 D 3
print(df2)
key value
0 B 3
1 D 1
2 E 1
3 F 3
我想要的是对键进行外部合并,然后选择不是NaN的值。如果两者均为int(或float),则选择哪一个并不重要。不过,这意味着很好。
print(df3)
key value
0 A 2
1 B 3
3 C 2
4 D 2
5 E 1
6 F 3
我试过了:
df3 = df1.merge(df2, on='key', how='outer')
但会生成2个新列。之后,我可以进行计算,但可以确定有一个更简单的解决方案,但我找不到。谢谢你的帮助。
这对我有效,按数据帧条目的顺序删除重复项,因此删除了df1中的重复项并保留了df2,如果有任何键与重复项不匹配或两者都为na,我们可以将其删除 .dropna()
dfs = pd.concat([df1,df2]).drop_duplicates(keep='last').dropna(how='any')
key value
0 A 2
2 C 2
3 D 3
0 B 3
1 D 1
2 E 1
3 F 3
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句