我对预测相当陌生,我正试图为我的组织创建一个需求预测;我正在遵循概述的这里方法。在此过程的步骤12中,作者从观察到的值中减去趋势值,以降低数据的趋势(代码如下所示):
# Using statmodels: Subtracting the Trend Component.
from statsmodels.tsa.seasonal import seasonal_decompose
df = pd.read_csv('https://raw.githubusercontent.com/selva86/datasets/master/a10.csv', parse_dates=['date'], index_col='date')
result_mul = seasonal_decompose(df['value'], model='multiplicative', extrapolate_trend='freq')
detrended = df.value.values - result_mul.trend我的问题是最后一行。如果分解是乘性的,为什么趋势值会被减去。它不应该被分割(而不是减去)吗?如果乘性时间序列是由下列因素提供的:
值=基本水平*趋势*季节性*误差,作者是否犯了错误,或者减法是唯一减少数据的方法?
发布于 2022-09-15 07:02:37
是的,作者犯了一个错误。在消除趋势的同时,需要将趋势与乘数时间序列区分开来。在下一个代码部分,他正确地取消了季节性:
# Deseasonalize
deseasonalized = df.value.values / result_mul.seasonalhttps://datascience.stackexchange.com/questions/114428
复制相似问题