auto_arima(... , seasonal=False) 但得到了 SARIMAX
auto_arima(... , seasonal=False) but got SARIMAX
我想知道 ARIMA 模型的阶数 (p,d,q),所以我必须使用 pmdarima
python 包。但是它给我推荐了SARIMAX型号!继续阅读以了解更多详情。
为此,我使用了 Daily Total Female Births 数据。这是一个平稳的时间序列。
# importing packages
import pandas as pd
from pmdarima import auto_arima
import warnings
warnings.filterwarnings('ignore')
# read csv file
df = pd.read_csv('/Data/DailyTotalFemaleBirths.csv' , index_col=0 , parse_dates=True)
# set daily frequency for datetime indexes
df.index.freq = 'D'
# now using auto_arima i try to find (p,d,q) orders for ARIMA model.
# so i set seasonal=False because i don't want orders for SARIMA! my
# goal is to find orders for ARIMA model not SARIMA
auto_arima(df['Births'] , start_P= 0 , start_q=0 , max_p=6 ,
max_q=3 , d=None , error_action='ignore' , suppress_warnings=True ,
m=12 , seasonal=False , stepwise=True).summary()
然后它给了我这个:
问题是虽然我设置了 seasonal=False
但它给了我 SARIMAX(代表 Seasonal Autoregressive Independent Moving Average)但我不想考虑季节性成分,所以我设置 seasonal=False
! pmdarima
好像没注意 seasonal=False
!
谁能帮我找出问题所在?
预期结果:
对于错误结果:SARIMAX 结果来自pmdarima
版本1.8.3
对于 True Result:ARIMA 结果来自 pmdarima
版本 1.1.0
它并没有真正使用季节性模型。这只是一条令人困惑的消息。
在 pmdarima 库中,在版本 v1.5.1 中,他们将正在使用的统计模型从 ARIMA 更改为更灵活且故障更少的模型,称为 SARIMAX。 (它代表季节性自回归综合移动平均线外生。)
尽管名称如此,但您可以通过将季节性项设置为零来以非季节性方式使用它。
您可以使用以下代码仔细检查模型是否具有季节性:
model = auto_arima(...)
print(model.seasonal_order)
如果显示为(0, 0, 0, 0)
,则不会进行季节性调整。
我想知道 ARIMA 模型的阶数 (p,d,q),所以我必须使用 pmdarima
python 包。但是它给我推荐了SARIMAX型号!继续阅读以了解更多详情。
为此,我使用了 Daily Total Female Births 数据。这是一个平稳的时间序列。
# importing packages
import pandas as pd
from pmdarima import auto_arima
import warnings
warnings.filterwarnings('ignore')
# read csv file
df = pd.read_csv('/Data/DailyTotalFemaleBirths.csv' , index_col=0 , parse_dates=True)
# set daily frequency for datetime indexes
df.index.freq = 'D'
# now using auto_arima i try to find (p,d,q) orders for ARIMA model.
# so i set seasonal=False because i don't want orders for SARIMA! my
# goal is to find orders for ARIMA model not SARIMA
auto_arima(df['Births'] , start_P= 0 , start_q=0 , max_p=6 ,
max_q=3 , d=None , error_action='ignore' , suppress_warnings=True ,
m=12 , seasonal=False , stepwise=True).summary()
然后它给了我这个:
问题是虽然我设置了 seasonal=False
但它给了我 SARIMAX(代表 Seasonal Autoregressive Independent Moving Average)但我不想考虑季节性成分,所以我设置 seasonal=False
! pmdarima
好像没注意 seasonal=False
!
谁能帮我找出问题所在?
预期结果:
对于错误结果:SARIMAX 结果来自pmdarima
版本1.8.3
对于 True Result:ARIMA 结果来自 pmdarima
版本 1.1.0
它并没有真正使用季节性模型。这只是一条令人困惑的消息。
在 pmdarima 库中,在版本 v1.5.1 中,他们将正在使用的统计模型从 ARIMA 更改为更灵活且故障更少的模型,称为 SARIMAX。 (它代表季节性自回归综合移动平均线外生。)
尽管名称如此,但您可以通过将季节性项设置为零来以非季节性方式使用它。
您可以使用以下代码仔细检查模型是否具有季节性:
model = auto_arima(...)
print(model.seasonal_order)
如果显示为(0, 0, 0, 0)
,则不会进行季节性调整。