我有以下df:
df = pd.DataFrame({'A': ['foo', 'bar', 'exa', 'tru', 'foo', 'bar', 'exa', 'tru'],
'B': [10, 20, 30, 40, 50, 60, 70, 80]})
輸出:
A B
0 foo 10
1 bar 20
2 exa 30
3 tru 40
4 foo 50
5 bar 60
6 exa 70
7 tru 80
并且my_list:
my_list = ['foo', 'bar']
我想執行 a但僅df.groupy('A')['B'].sum()針對.df['A']my_list
uj5u.com熱心網友回復:
您可以使用 where :
df.where(df.A.isin(my_list)).groupby('A')['B'].sum()
uj5u.com熱心網友回復:
使用 loc
(df.loc[df['A'].isin(my_list)] # rows where A matches my_list
.groupby('A',as_index=False)['B'].sum()) #groupby and sum
A B
0 bar 80
1 foo 60
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/515878.html
