我有一个数据框
col1 col2 col3 col4 col5 col6 col7
0 Sem 01.2017 2 4 Noo RX
1 Kola 01.2017 3 4 Foo RX
2 Kety 02.2017 4 3 Roo RX
3 Pyti 01.2017 5 5 Kaa RX
4 Pyti 02.2017 3 1 Joo RX
5 Kola 03.2017 8 3 PPP RX
6 Café 01.2017 1 1 Cf RX
7 Kety 02.2017 2 1 T RX
我groupby()为两个字段 col2、col3 做了,并找到了字段 col4 的总和:
df.groupby(['col2', 'col3'])['col4'].sum()
发生:
col2 col3 col4
Kola 01.2017 3
03.2017 8
Kety 02.2017 6
Pyti 01.2017 5
02.2017 3
Sem 01.2017 2
Café 01.2017 1
但是对于同一个分组,我需要添加第三列['col5'].unique()
最终结果应如下所示:
col2 col3 col4 col5
Kola 01.2017 3 4
03.2017 8 3
Kety 02.2017 6 [3,1]
Pyti 01.2017 5 5
02.2017 3 1
Sem 01.2017 2 4
Café 01.2017 1 1
使用df.groupby(...).agg()方法: