这是对上一篇文章的延续,但我试图预测每周的收入。我的程序似乎通过了adfuller测试。它以前运行过,从p值来看是平稳的,但不是一致的。我也添加了SARIMAX,代码就挂起了。如果我取消,我将在底部(周期性地)收到一条消息,说问题是不受约束的。
数据:
Week | Week_Start_Date |Amount |year
Week 1 2018-01-01 42920 2018
Week 2 2018-01-08 37772 2018
Week 3 2018-01-15 41076 2018
Week 4 2018-01-22 38431 2018
Week 5 2018-01-29 101676 2018
代码:
x = organic_search.groupby('Week_Start_Date').Amount.sum()
# Augmented Dickey-Fuller test
ad_fuller_result = adfuller(x)
print(f'ADF Statistic: {ad_fuller_result[0]}')
print(f'p-value: {ad_fuller_result[1]}')
# SARIMA Model
plt.figure(2)
best_model = SARIMAX(x, order=(2, 1, 1), seasonal_order=(2, 1, 1, 52)).fit(dis=1)
print(best_model.summary())
best_model.plot_diagnostics(figsize=(15,12))
我只工作185行左右。我不明白为什么代码总是挂着。欢迎任何优化建议(对于adfuller和SARIMAX)。
修正通过传递organic_search['Amount']代替organic_search.groupby('Week_Start_Date').Amount.sum()