how can select, filter , agg in 1 statement...(pieces below)
df = df.loc[df['gender'] == ('m'),['name','gender','weight']] df = df.groupby(['name','gender']).agg({'weight': np.sum})
build test data:
df = pd.dataframe({'gender':np.random.choice(['m','f'],size=10), 'name':np.random.choice(list('abcd'),10), 'weight':np.random.randint(50,250,10), 'height':np.random.randint(3,15,10)}) print(df)
output df
gender height name weight 0 m 5 153 1 m 10 103 2 m 5 c 185 3 f 4 b 82 4 m 4 c 112 5 m 12 b 224 6 m 12 d 131 7 f 6 d 193 8 f 12 b 78 9 f 13 c 58
do filter , group 1 statement:
df.loc[df['gender']=='m',['name','gender','weight']].groupby(['name','gender']).agg({'weight':'sum'}) weight name gender m 256 b m 224 c m 297 d m 131
Comments
Post a Comment