Когда я вывожу данные о запасах в фреймворк из Yahoo, я хочу иметь возможность рассчитать среднее значение за 5 дней, исключая текущую дату.Pandas and Rolling_Mean с смещением (средний ежедневный расчет объема)
Есть ли способ использовать скользящее среднее со смещением? Например, 5-дневный означает, что исключает текущий день и основывается на предыдущих 5 днях.
Когда я запускаю следующий код
r = DataReader("BBRY", "yahoo", '2015-01-01','2015-01-31')
r['ADV']=pd.rolling_mean(r['Volume'], window=5)
возвращает объем 5 дней, включая текущую дату, поэтому, когда вы смотрите на ниже, 1/8 имеет средний объем от 1/2,1/5,1/6,1/7 и 1/8. Я бы хотел, чтобы 1/9 была первой датой, которая возвращает средний объем, и она содержит данные из 1/2,1/5,1/6,1/7 и 1/8.
Date Open High Low Close Volume Adj Close Symbol ADV
1/2/2015 11.01 11.11 10.79 10.82 9733200 10.82 BBRY
1/5/2015 10.6 10.77 10.37 10.76 12318100 10.76 BBRY
1/6/2015 10.8 10.85 10.44 10.62 10176400 10.62 BBRY
1/7/2015 10.65 10.8 10.48 10.67 10277400 10.67 BBRY
1/8/2015 10.75 10.78 10.57 10.63 6868300 10.63 BBRY 9,874,680.00
1/9/2015 10.59 10.65 10.28 10.38 7745600 10.38 BBRY 9,477,160.00
Спасибо за вашу помощь
IIUC вы после 'pd.rolling_mean (г [ 'Vo lume ']. shift(), window = 5) '? – EdChum