Агрегирование данных во время преобразования вертикальных данных в горизонтальные данные (например, функция dcast R)

Входные данные :

x   y   z   a     b     wkn   year   S1   S2
A   1   6   121   1066  18    2015   10   5
A   1   6   121   1066  18    2015   20   6
A   1   6   121   1066  19    2015   5    3

Ожидаемый результат:

x   y   z    a      b   wkn   S1_2015  S2_2015
A   1   6   121   1066  18      30      11
A   1   6   121   1066  19      5       3

group_keys = [х, у, г, а, б, WKN]

aggrgated_function: sum

Может ли кто-нибудь помочь мне получить ожидаемый результат.

Заранее спасибо.

1 ответ

Предполагая, что ваш вклад находится в pandas.DataFrameВы можете просто сделать:

df.groupby(['x','y','z','a','b','wkn','year]).agg('sum')

что приведет к:

                                    S1  S2
x   y   z   a   b    wkn    year        
A   1   6   121 1066  18    2015    30  11
                      19    2015    5   3
Другие вопросы по тегам