新しい列「category」が挿入された条件ベースの新しい計算についてブログを読んでいました。
data = {'name': ['Jason', 'Molly', 'Tina', 'Jake', 'Amy'],
'age': [42, 52, 36, 24, 73],
'preTestScore': [4, 24, 31, 2, 3],
'postTestScore': [25, 94, 57, 62, 70]}
df = pd.DataFrame(data, columns = ['name', 'age', 'preTestScore', 'postTestScore'])
df['category'] = np.where(df['age']>=50, 'yes', 'no')
年齢が20歳未満の場合、子供など、複数の条件に拡張する方法。21から40の間の場合、若い; 40を超える場合は古い
複数の条件の場合、numpy.select
代わりに使用できますnumpy.where
import numpy as np
cond = [df['age'] < 20, df['age'].between(20, 39), df['age'] >= 40]
choice = ['kid', 'young', 'old']
df['category'] = np.select(cond, choice)
# name age preTestScore postTestScore category
#0 Jason 42 4 25 old
#1 Molly 52 24 94 old
#2 Tina 36 31 57 young
#3 Jake 24 2 62 young
#4 Amy 73 3 70 old
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加