任意の列の値を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かどうかの条件で判定します

df.head()

1
2
df['350up'] = df['Price'].apply(lambda x :1 if x >350 else 0)
df

結果は以下のとおり

df.head()