如果df2中不存在数据,我会尝试从df1获取数据,df1中的col1应该与df2中的col3对齐(col2和col4相同)
Df1:
col1 col2
2 2
1 Nan
Nan 1
Df2:
col3 col4
Nan 1
1 Nan
Nan 1
Final_Df:
col1 col2
2 1
1 Nan
Nan 1
就用熊猫吧。数据帧。更新(其他)。覆盖参数说明。
覆盖bool,默认True
如何处理重叠键的非NA值:
>
True:使用其他数据帧的值覆盖原始数据帧的值。
False:仅更新原始DataFrame中的NA值。
请注意,df.update(其他)
在匹配列标签上使用来自另一个DataFrame的非NA值进行修改。
df2.update(df1.set_axis(df2.columns, axis=1))
print(df2)
col3 col4
0 2 2
1 1 Nan
2 Nan 1
使列相同/将Nan替换为np。NAN/更新数据帧
df1.columns = df2.columns
df2 = df2.replace('Nan', np.NAN)
df2.update(df1, overwrite=False) # will only update the NAN values