Pandas - dataframe groupby - como obter soma de várias colunas
Deve ser fácil, mas de alguma forma não consegui encontrar uma solução que funcione.
Eu tenho um dataframe de pandas que se parece com isso:
index col1 col2 col3 col4 col5
0 a c 1 2 f
1 a c 1 2 f
2 a d 1 2 f
3 b d 1 2 g
4 b e 1 2 g
5 b e 1 2 g
Quero agrupar por col1 e col2 e obter osum()
de col3 e col4. Col5
pode ser descartado, pois os dados não podem ser agregados.
Aqui está como a saída deve ser. Estou interessado em ter amboscol3
ecol4
no quadro de dados resultante. Realmente não importa secol1
ecol2
fazem parte do índice ou não.
index col1 col2 col3 col4
0 a c 2 4
1 a d 1 2
2 b d 1 2
3 b e 2 4
Aqui está o que eu tentei:
df_new = df.groupby(['col1', 'col2'])["col3", "col4"].sum()
Isso, no entanto, retorna apenas os resultados agregados decol4
.
Eu estou perdido aqui. Todos os exemplos que encontrei agregam apenas uma coluna, onde o problema obviamente não ocorre.