閉じる

pandasで自作関数をapplyするときはaxis=1を設定する[Pandas][Python]

import pandas as pd

def func(row):
    if row['A'] < 3:
        return row['A'] + row['B']
    else:
        return row['A'] + row['C']

df = pd.DataFrame({'A':[1,2,3],'B':[1,4,9],'C':[1,8,27]})
df['D'] = df.apply(func, axis=1) # ここでaxis=1をおくことで行ごとの処理になる
print (df)

   A  B  C   D
0  1  1  1   2
1  2  4  8   6
2  3  9  27  30

Pocket

コメントを残す

あなたのメールアドレスは公開されません。必須項目には印がついています *

© 2020 CV・NLP TIPS | WordPress Theme: Annina Free by CrestaProject.