Pandas/Python: Set value of one column based on value in another column

后端 未结 8 2404
醉酒成梦
醉酒成梦 2020-11-28 22:57

I need to set the value of one column based on the value of another in a Pandas dataframe. This is the logic:

if df[\'c1\'] == \'Value\':
    df[\'c2\'] = 10         


        
8条回答
  •  攒了一身酷
    2020-11-28 23:46

    I suggest doing it in two steps:

    # set fixed value to 'c2' where the condition is met
    df.loc[df['c1'] == 'Value', 'c2'] = 10
    
    # copy value from 'c3' to 'c2' where the condition is NOT met
    df.loc[df['c1'] != 'Value', 'c2'] = df[df['c1'] != 'Value', 'c3']
    

提交回复
热议问题