вот моя проблема. Что у меня есть, DataFrame следующим образом:функции прокатки панды с временной группой
df:
2013-10-24 1
2013-10-25 2
2013-11-27 3
2013-11-28 4
2013-12-01 5
2013-12-02 6
То, что я хочу, это DataFrame такие, как это:
rolling_mean (ДФ, окно = '1М'):
2013-10 1.5
2013-11 3.5
2013-12 5.5
rolling_mean (DF, окна = '2М'):
2013-10 NAN
2013-11 2.5
2013-12 4.5
rolling_mean (DF, окна = '3M'):
2013-10 NAN
2013-11 NAN
2013-12 3.5
rolling_mean (ДФ, окно = '1Y'):
2013-10 NAN
2013-11 NAN
2013-12 NAN
где 1М '1 месяц', 2М '2 месяца. Окно не является значением int, а временным интервалом, таким как «1D», «3M», «1Y» и т. Д. Эта функция может группировать данные по временному модулю, таким как «D», «M», «Y», а затем прокатывать блок данных через номер до единицы времени, такой как 1, 3 ...
Мне нужно такая функция качения такая? Может ли кто-нибудь мне помочь? Я дал ясное описание? Большое спасибо.
Update:
Я до сих пор загадка. Мне нужно реализовать такую функцию, которая могла бы вычислять стандартное отклонение от календарного дня каждый день, а не повторять выбор по месяцам, но блок шага окна взвешивается по месяцам.
В этом случае , что у меня есть также ДФ:
2013-10-24 1
2013-10-25 2
2013-11-27 3
2013-11-28 4
2013-12-01 5
2013-12-02 6
pd.rolling_std (df.resample ('1M'), окно = 1):
В результате
2013-10 NAN
2013-11 NAN
2013-12 NAN
, что я на самом деле в dataframe, как это (окно = 1):
2013-10 0.5
2013-11 0.5
2013-12 0.5
Первый 0.5 - стандартное отклонение, которое может быть рассчитано np.sqrt ([1,2]) с октября. Также 0,5 из других представлены в [3,4] и [5,6]. Однако, независимо от метода how = 'xxx' в функции resample, результат неверен. Задача результат 2months есть,
DF (окно = 2):
2013-10 NAN
2013-11 1.1180
2013-12 1.1180
Первый 1,1180 представляет собой стандартное отклонение, которое можно рассчитать с помощью np.sqrt ([1,2,3,4 ]) с октября и ноября. 1.1180 из 2013-12 из [3,4,5,6] 2013-11 и 2013-12 годов.
p.s. Стандартное отклонение является одной из моих функций, которые я хочу реализовать качению ... СПАСИБО ~
Я думаю, что 'freq' пары из' rolling_mean' является то, что вы после этого, но вы должны datetimeindex для этого, чтобы работать – EdChum
могли бы вы показать мне простой пример код? Новое к пандам, спасибо u! @EdChum – diaosihuai