Как использовать для L oop для pandas Перемещение windows - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть датафрейм, я применил pandas метод движущегося окна.

moving = df.rolling(150, win_type='triang').mean()

В приведенной выше строке кода можно рассчитать среднее значение движущегося окна, но мне не нужно среднее значение для каждого движущегося окна. Мне нужно подать заявку на l oop для обработки каждого движущегося окна, что-то вроде следующего:

for x in moving:
    #do some process

Есть ли эффективный способ сделать это в python?

1 Ответ

3 голосов
/ 14 апреля 2020

Вы можете применить функцию в каждом окне, используя метод apply.

moving_windows = df.rolling(150, win_type='triang')

def do_process(window):
    #do some process


window_results = moving_windows.apply(do_process)

См. https://pandas.pydata.org/pandas-docs/version/0.23.4/generated/pandas.core.window.Rolling.apply.html

...