提问者:小点点

如果df2中不存在数据,则从df1获取数据


如果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   

共2个答案

匿名用户

就用熊猫吧。数据帧。更新(其他)。覆盖参数说明。

覆盖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