Как выполнить обратную скользящую среднюю (в пандах, скользящую (). Среднюю) операцию с прогнозируемыми значениями? - PullRequest
0 голосов
/ 22 сентября 2018

У меня есть df как это:

import numpy as np
import pandas as pd
import matplotlib.pylab as plt
np.random.seed(100)
data = np.random.rand(200,3)

df = pd.DataFrame(data)
df.columns = ['a', 'b', 'y']

df['y_roll'] = df['y'].rolling(10).mean()
df['y_roll_predicted'] = df['y_roll'].apply(lambda x: x + np.random.rand()/20)

В приведенном выше коде я создал случайных панд df.Затем использовал rolling(10).mean() для выполнения moving average над df['y'] и сохранил его как df['y_roll'].

график df['y'] выглядит следующим образом: plot of y

Поскольку моя модель не смогла предсказать острые края df['y'], я решил выполнить для нее операцию roll.mean () и попытаться предсказать свернутые данные df['y_roll'].Теперь моя модель может прогнозировать df['y_roll'] и ее имя: df['y_roll_predicted'].

. Как я могу выполнить операцию обратного вращения для этого прогнозируемого столбца, чтобы я мог сравнить ее со значениями df['y']?

Участок df['y_roll_predicted'] против df['y_roll'] выглядит следующим образом: enter image description here

...