簡體   English   中英

如何在熊貓中按索引和列分組

[英]How to groupby an index as well as a column in pandas

假設我有一個簡單的數據框,該數據框具有一個日期時間的索引和三列-一列是值,一列是匯總指示器,最后一列是唯一標識符。 索引在整個數據框中不是唯一的,因為它在指標的多個實例上重復。 即它看起來像這樣:

index, val, aggregating indicator, unique_ref
1-Jan, 1, set_a,r1
2-Jan, 2, set_a,r2
1-Jan, 3, set_a,r3
2-Jan, 4, set_a,r4
1-Jan, 5, set_b,r5
2-Jan, 6, set_b,r6

是否可以通過索引以及aggregating_indicator匯總(一步)val和group?

即我想要的結果是

index, sum, aggregating_indicator
1-Jan, 4, set_a // ie 1+3
2-Jan, 6, set_a // ie 2+4
1-Jan, 5, set_b
2-Jan, 6, set_b

分兩步來做就可以了...但是我想知道是否有可能以一種簡潔的方式來做。

您可以這樣做:

>>> df.reset_index().groupby(['index','aggregating indicator'])['val'].sum().reset_index()
   index aggregating indicator  val
0  1-Jan                 set_a    4
1  1-Jan                 set_b    5
2  2-Jan                 set_a    6
3  2-Jan                 set_b    6

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM