pandasの複数列の値から新しい列を作る処理を関数で定義するにはapplyを使えば良い
2021.08.29
今回はpandasで複数列の値から新しい列を作る処理を関数で定義できるapplyの使い方を紹介します。
解決できる問題
例えば、df['a']の値が5かつdf['b']が10以上のときに1を返して、他は0みたいな列cを作りたい
mapを使っても、列同士の四則演算でも実装ができないとき、できるけど、違う列を作る必要があるときなどに便利。
pythondef decide_c(row): if row['a'] >= 5 and row['b'] >= 10: return 1 else: return 0 df['c'] = df.apply(decide_c, axis=1)