我有一个pandas数据帧,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
解决办法:combine_first如有必要,您可以使用转换为整数:
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
如果需要检查两个DataFrames 之间的交叉点索引和列:
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
3 43 23 34








暂无数据