У меня есть файл данных excel с тысячами строк и столбцов. Я использую python и начал использовать pandas dataframes для анализа данных. То, что я хочу сделать в столбце D, - рассчитать ежегодное изменение значений в столбце C для каждого года для каждого идентификатора. Я могу использовать excel для этого - если идентификатор org такой же, как в предыдущей строке, вычисляйте годовое изменение (оставляя ячейки выделенными синим цветом, потому что это первый период для этого конкретного идентификатора). Я не знаю, как это сделать, используя python. Может ли кто-нибудь помочь?
Предполагая, что датафрейм уже отсортирован
df.groupby(‘ID).Cash.pct_change()
Тем не менее, вы можете ускорить работу с предположением, что вещи сортируются. Потому что его не нужно группировать, чтобы вычислить процентное изменение от одной строки к следующей
df.Cash.pct_change().mask(
df.ID != df.ID.shift()
)
Они должны содержать значения столбцов, которые вы ищете. Чтобы добавить столбец, вам нужно назначить столбцу или создать новый фреймворк с новым столбцом
df[‘AnnChange] = df.groupby(‘ID).Cash.pct_change()