用于时间序列预测的bat和tbat
tbats的Python项目详细描述
bats和tbats时间序列预测
包提供BATS和TBATS时间序列预测方法,如所述:
De Livera, A.M., Hyndman, R.J., & Snyder, R. D. (2011), Forecasting time series with complex seasonal patterns using exponential smoothing, Journal of the American Statistical Association, 106(496), 1513-1527.
安装
来自PYPI:
pip install tbats
导入途径:
fromtbatsimportBATS,TBATS
最小工作示例:
fromtbatsimportTBATSimportnumpyasnp# required on windows for multi-processing,# see https://docs.python.org/2/library/multiprocessing.html#windowsif__name__=='__main__':np.random.seed(2342)t=np.array(range(0,160))y=5*np.sin(t*2*np.pi/7)+2*np.cos(t*2*np.pi/30.5)+ \ ((t/20)**1.5+np.random.normal(size=160)*t/50)+10# Create estimatorestimator=TBATS(seasonal_periods=[14,30.5])# Fit modelfitted_model=estimator.fit(y)# Forecast 14 steps aheady_forecasted=fitted_model.forecast(steps=14)# Summarize fitted modelprint(fitted_model.summary())
阅读车型详细信息
# Time series analysisprint(fitted_model.y_hat)# in sample predictionprint(fitted_model.resid)# in sample residualsprint(fitted_model.aic)# Reading model parametersprint(fitted_model.params.alpha)print(fitted_model.params.beta)print(fitted_model.params.x0)print(fitted_model.params.components.use_box_cox)print(fitted_model.params.components.seasonal_harmonics)
有关详细信息,请参见examples目录
对于贡献者
建筑包:
pip install -e .[dev]
单元和集成测试:
python setup.py test
r预测包比较测试。那些不使用默认测试命令运行的程序,您需要安装r forecast包:
python setup.py test_r
与r实现的比较
python实现意味着尽可能地等同于forecast包中的r实现。
- 蝙蝠在rhttps://www.rdocumentation.org/packages/forecast/versions/8.4/topics/bats
- tbats在r中:https://www.rdocumentation.org/packages/forecast/versions/8.4/topics/tbats