#python #pandas #pandas-groupby
#питон #панды #панды-группби
Вопрос:
Я пытаюсь использовать cumsum с groupby, он не выдает ошибку, но также не создает индекс на основе столбца groupby. Вот код:
t = pandas.DataFrame(
[["a",3], ["a", 5], ["a", 7], ["b",11], ["b", 13], ["b", 17]],
columns=["labels", "fractions"]
)
display(t)
t.groupby("labels").cumsum()
Вот результат:
labels fractions
0 a 3
1 a 5
2 a 7
3 b 11
4 b 13
5 b 17
fractions
0 3
1 8
2 15
3 11
4 24
5 41
Я понимаю, что могу использовать индекс в результате (0,1,2, …), чтобы найти метки, но я удивлен, что groupby не делает метку индексом
Комментарии:
1. Как выглядит ожидаемый результат? Вы хотите
t['new'] = t.groupby("labels")['fractions'].cumsum()
?
Ответ №1:
Если бы groupby сделал метку индексом, она бы повторяла индекс, поэтому вместо этого она сохраняет исходный индекс, а затем можно создать соответствующий индекс по мере необходимости в результатах.