Я пытаюсь вычислить разницу между двумя столбцами последовательно настолько эффективно, насколько это возможно .Мой DataFrame выглядит так:
category sales initial_stock
1 2 20
1 6 20
1 1 20
2 4 30
2 6 30
2 5 30
2 7 30
И я хочу вычислить переменную final_stock
, например:
category sales initial_stock final_stock
1 2 20 18
1 6 20 12
1 1 20 11
2 4 30 26
2 6 30 20
2 5 30 15
2 7 30 8
Таким образом, final_stock
сначала равно initial_stock
- sales
и оно равно final_stock.shift()
- sales
для каждой категории.Мне удалось сделать это с помощью for
петель, но это довольно медленно, и я чувствую, что, возможно, есть один или два линейных решения этой проблемы.У вас есть идеи?
Спасибо