執筆の経緯
pandasでapplyを使うときにやり方忘れがちなので、個人的メモとしてまとめておきます。
無名関数の場合
df['dessert'] = df['dessert'].apply(lambda x : x.lower())
apply関数はreplace=Trueを使えないので、applyしたものは代入して上書きが必要です。
ここも忘れがちなので注意。
宣言された関数を利用する場合
def make_dessert_name_lower(x):
return x.lower()
df['dessert'] = df['dessert'].apply(make_dessert_name_lower)
()内は関数名のみの指定で通常の関数宣言のように**make_dessert_name_lower(x)**としなくても大丈夫です。
おまけ applyしないでseriesに一括処理を加えたい場合
desserts = []
for dessert in df['desert']:
lower_dessert = dessert.lower()
desserts.append(lower_dessert)
df['desert'] = dessert
必要になるケースがあるか分かりませんがよく見かける書き方です。
ここまで、お付き合いいただきありがとうございました。