Взаимодействие с предыдущими ячейками в Pandas
День добрый! Задача такая. Строю DataFrame с большим количеством строк. По примеру:

Нужно получить еще одну колонку, значение которой равно делению текущего значения колонки "Значение1" на среднее из предыдущих x значений той же колонки. Получая нечто вроде этого(в данном случае значение x = 3)
В python новичок, а для работы данная процедура необходима
Заранее спасибо
Ответы (1 шт):
Автор решения: Алексей Р
→ Ссылка
wind = 4
df = pd.DataFrame({'col1': range(2, 10)})
df['col2'] = df.col1.rolling(wind, min_periods=wind).apply(lambda x: x.iat[-1] / x[:wind - 1].mean())
print(df)
col1 col2
0 2 NaN
1 3 NaN
2 4 NaN
3 5 1.666667
4 6 1.500000
5 7 1.400000
6 8 1.333333
7 9 1.285714