首页 > 解决方案 > 用另一个表列更新一个列,其中表的另一列彼此相等熊猫

问题描述

我有两个熊猫数据框,如下所示,

Left_Frame 
       symbol    price timelab1 timelab2 timelab3     _merge
    0  145822  10.5018    19:00                    left_only
    1  145819  10.5055    19:00                    left_only
Right_Frame
        symbol  price timelab1 timelab2 timelab3      _merge
    16  145822  10.58      NaN      NaN      NaN  right_only
    17  145819  10.55      NaN      NaN      NaN  right_only

我想用等于两个数据框的价格更新Left_Frame价格。预期结果是,Right_Framesymbol

Left_Frame 
       symbol    price timelab1 timelab2 timelab3     _merge
    0  145822  10.58      19:00                    left_only
    1  145819  10.55      19:00                    left_only

我怎样才能在熊猫中做到这一点?

标签: pandas

解决方案


这样就可以了

我想用 Right_Frame 价格更新 Left_Frame 价格,其中符号等于两个数据框。预期结果是

left_frame['price'] = np.where(left_frame['symbol'].values == right_frame['symbol'].values, right_frame['price'],left_frame['price'])

更新

left_frame.loc[:,'price'] = np.where(left_frame['symbol'].values == right_frame['symbol'].values, right_frame['price'],left_frame['price'])

推荐阅读