我有一个熊猫数据框 df1。
我想用 df2 中的值覆盖它的值,其中索引和列名匹配。
我在这个网站上找到了一些答案,但没有什么能完全满足我的要求。
df1
A B C
0 33 44 54
1 11 32 54
2 43 55 12
3 43 23 34
df2
A
0 5555
输出
A B C
0 5555 44 54
1 11 32 54
2 43 55 12
3 43 23 34
combine_first
如有必要,您可以使用with 转换为整数:
df = df2.combine_first(df1).astype(int)
print (df)
A B C
0 5555 44 54
1 11 32 54
2 43 55 12
3 43 23 34
如果需要检查两个DataFrame
s之间的交集索引和列:
df2= pd.DataFrame({'A':[5555, 2222],
'D':[3333, 4444]},index=[0, 10])
idx = df2.index.intersection(df1.index)
cols = df2.columns.intersection(df1.columns)
df = df2.loc[idx, cols].combine_first(df1).astype(int)
print (df)
A B C
0 5555 44 54
1 11 32 54
2 43 55 12
3 43 23 34
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句