亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在Python中一起使用filter、group by和agg函數

如何在Python中一起使用filter、group by和agg函數

白衣非少年 2023-10-18 20:42:11
我有下面的數據框:  A         B       C0 asia      1000    ab1 africa    2000    ab2 asia      4000    bc3 asia      6000    cd4 USA       200     ab我想過濾 A 列 = 亞洲 并按 C 列對 B 列進行求和。我正在嘗試使用:agg = df[df['A'] = 'asia'].groupby('C')[['B']].sum()但它只返回一行,其中包含 B 列和 C 列的總和。我想返回整個數據幀。我怎樣才能做到這一點?
查看完整描述

2 回答

?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊

嘗試這個:


df1 = df[df['A'] == 'asia'].groupby(['A', 'C'], as_index=False).sum()

print(df1)


      A   C     B

0  asia  ab  1000

1  asia  bc  4000

2  asia  cd  6000


查看完整回答
反對 回復 2023-10-18
?
慕姐4208626

TA貢獻1852條經驗 獲得超7個贊

我將分兩步進行,如下所示。

group = [('asia', data['B'].sum(), c) for c, data in df[df['A'] = 'asia'].groupby('C')]
df_new = pd.DataFrame(group, columns=['A', 'B', 'C'])


查看完整回答
反對 回復 2023-10-18
  • 2 回答
  • 0 關注
  • 172 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號