我是第一次进行时间序列预测,对如何创建目标变量几乎没有什么困惑。数据如下:
我正在尝试预测2019年第一季度客户A的销售百分比变化。我想得出目标的一种方法是过去3个月的移动平均值和1的变动。经过操纵,看起来:
但是我感到困惑的是,我应该选择4月的目标的平均1月,2月,3月还是1月的目标的平均2月,3月,4月?
答案 0 :(得分:1)
时间序列预测基于自相关原理,例如Xn to Xn+100
和Xn+time_lag to Xn+100+time_lag
中的y
您会注意到时间滞后越大,自相关越小,并且模型的预测能力越差:
如果创建滚动平均值,则会丢失信息,从而创建模糊目标。我会使用target
本身来获得更好的预测。
我的意思是,您使用与target
和x_train
相同的变量y_train
,在它们之间造成了时间差。
然后,您可以使用ARIMA,LSTM神经网络,线性回归,神经网络,时间卷积网络从输入映射到目标。
检查数据的自相关级别:
from pandas.plotting import autocorrelation_plot
autocorrelation_plot(dataframe['target'])