pandasで条件に合わせてデータを書き換える
■lambdaを利用する方法
#0,1でフラグを立てる時には便利 #columnsの値が'ok'の場合colums1を1にしてそれ以外の場合には0にする df['column1'] = df['column2'].apply(lambda x: 1 if x == 'ok' else 0)
■maskを利用する方法
#条件を満たす場合のみ値を変更 #columnsの値が'ok'の場合colums1を1にしてそれ以外の場合にはそのまま df['column1'] = df['column1'].mask(df['column2'] == 'ok', 1)
■whereを利用する方法
#maskの反対で条件を満たさない場合にのみ値を変更 #columnsの値が'ok'の場合colums1はそのままにして'ok'ではない場合に1にする df['column1'] = df['column1'].where(df['column2'] == 'ok', 1)
参考の記事はこちら
note.nkmk.me
なんだかSQLに慣れているとこのコードが結構違和感。