任意の列の値をif条件で判定し、判定結果の正しい(1),正しくない(0)を新しい列に格納したい時にはlambda(無名関数)を使うと簡単に実現できます。
チートシート
やりたいこと | コーディング |
---|---|
Price列をif条件(350Up?)で判定し 結果(0/1)を新しい列'350Up'に格納する |
df['350up'] = df['Price'].apply(lambda x :1 if x >350 else 0) |
サンプルオペレーション
1
2
3
4
5
6
7
# サンプルデータフレームを作成
cars = {'Brand': ['Nissan Leaf','Toyota Prius','Honda Legend','Mazda MPV'],
'Price': [400,320,770,350]
}
df = pd.DataFrame(cars, columns = ['Brand', 'Price'])
df
以下の簡単なデータフレームに対して、Price が350Upかどうかの条件で判定します
1
2
df['350up'] = df['Price'].apply(lambda x :1 if x >350 else 0)
df
結果は以下のとおり