Вот тот, который работал для меня.
олжно быть легко, но почему-то я не мог найти решение, которое работает.
У меня есть пандас dataframe, который выглядит так:
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
Я хочу сгруппировать по col1 и col2 и получитьsum()
из col3 и col4. Col5
может быть отброшен, так как данные не могут быть агрегированы.
Вот как должен выглядеть результат. Я заинтересован в том, чтобы обаcol3
а такжеcol4
в результирующем кадре данных. Это действительно не имеет значения, еслиcol1
а такжеcol2
являются частью индекса или нет.
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
Вот что я попробовал:
df_new = df.groupby(['col1', 'col2'])["col3", "col4"].sum()
Это, однако, только возвращает агрегированные результатыcol4
.
Я потерян здесь. Каждый пример, который я нашел, объединяет только один столбец, где проблема явно не возникает.