使用 statsmodels 进行 ARMA 样本外预测

     2023-02-16     179

关键词:

【中文标题】使用 statsmodels 进行 ARMA 样本外预测【英文标题】:ARMA out-of-sample prediction with statsmodels 【发布时间】:2013-09-08 02:56:47 【问题描述】:

我正在使用 statsmodels 来拟合 ARMA 模型。

import statsmodels.api as sm
arma    = sm.tsa.ARMA(data, order =(4,4));
results = arma.fit( full_output=False, disp=0);

其中data 是一维数组。我知道要获得样本内预测:

pred = results.predict();

现在,给定第二个数据集data2,我如何使用之前校准的模型来生成一系列基于此观察的预测(预测)?

【问题讨论】:

【参考方案1】:

对于单变量的样本外预测(测试)我们可以使用:

ARMAResults.forecast(steps=1, exog=None, alpha=0.05)

应该是res.forcast(steps=1)

同样适用于 ARIMA。

ARIMAResults.forecast(steps=1, exog=None, alpha=0.05)

【讨论】:

哦,没看到帕尔默小姐的评论【参考方案2】:

我认为这有问题。如果您在 github 上提交一个文件,我将更有可能记得添加类似这样的内容。预测机制(尚未)可用作面向用户的功能,因此您必须执行此类操作。

如果您已经拟合了模型,那么您可以这样做。

# this is the nsteps ahead predictor function
from statsmodels.tsa.arima_model import _arma_predict_out_of_sample
res = sm.tsa.ARMA(y, (3, 2)).fit(trend="nc")

# get what you need for predicting one-step ahead
params = res.params
residuals = res.resid
p = res.k_ar
q = res.k_ma
k_exog = res.k_exog
k_trend = res.k_trend
steps = 1

_arma_predict_out_of_sample(params, steps, residuals, p, q, k_trend, k_exog, endog=y, exog=None, start=len(y))

这是一个领先一步的新预测。您可以将此附加到 y 上,并且您需要更新残差。

【讨论】:

您知道这是否仍然是 statsmodels 的问题吗?现在包中是否更好地支持了这一点? 这相当于做 res.forecast() statsmodels.org/dev/generated/…

使用 statsmodels 进行预测

】使用statsmodels进行预测【英文标题】:Forecastingwithstatsmodels【发布时间】:2016-12-0800:11:55【问题描述】:我有一个.csv文件,其中包含一个5年的时间序列,具有每小时分辨率(商品价格)。根据历史数据,我想创建第6年的价格... 查看详情

Python statsmodels ARIMA 预测

】PythonstatsmodelsARIMA预测【英文标题】:PythonstatsmodelsARIMAForecast【发布时间】:2016-02-1304:56:34【问题描述】:我正在尝试使用pythonstatsmodels进行样本外预测。我不想只预测训练集末尾的下x个值,但我想一次预测一个值,并在预测... 查看详情

使用 Scikit-learn 与 Statsmodels 进行线性回归

】使用Scikit-learn与Statsmodels进行线性回归【英文标题】:LinearRegressionusingScikit-learnvsStatsmodels【发布时间】:2017-12-3122:29:47【问题描述】:我想检查在使用Scikit-Learn和Statsmodels.api解决多元线性回归问题时是否产生相同的输出。我分... 查看详情

statsmodels 的 MLEModel 类是不是使用期望最大化进行拟合?

】statsmodels的MLEModel类是不是使用期望最大化进行拟合?【英文标题】:isstatsmodels\'MLEModelclassusingExpectationMaximizationforfitting?statsmodels的MLEModel类是否使用期望最大化进行拟合?【发布时间】:2021-07-1312:52:04【问题描述】:我正在使... 查看详情

为啥当我使用 statsmodels 进行 OLS 和使用 scikit 进行 PooledOLS 时得到相同的结果?

】为啥当我使用statsmodels进行OLS和使用scikit进行PooledOLS时得到相同的结果?【英文标题】:WhydoIgetthesameresultswhenIdoOLSusingstatsmodelsandPooledOLSusingscikit?为什么当我使用statsmodels进行OLS和使用scikit进行PooledOLS时得到相同的结果?【发布... 查看详情

使用 statsmodels 进行 Holt-Winters 时间序列预测

】使用statsmodels进行Holt-Winters时间序列预测【英文标题】:Holt-Winterstimeseriesforecastingwithstatsmodels【发布时间】:2018-11-1923:32:31【问题描述】:我尝试使用holt-wintersmodel进行预测,如下所示,但我不断得到与我的预期不一致的预测... 查看详情

无法使用新观察值更新 StatsModels SARIMAX (ValueError)

】无法使用新观察值更新StatsModelsSARIMAX(ValueError)【英文标题】:Can\'tupdateStatsModelsSARIMAXwithnewobservation(ValueError)【发布时间】:2021-09-1707:45:10【问题描述】:我正在尝试使用SciKitLearn的TimeSeriesSplit()在时间序列数据集上运行样本外... 查看详情

超详细多元线性回归模型statsmodels_ols(代码片段)

多元线性模型的主要作用:(主要进行预测)通过建模来拟合我们所提供的或是收集到的这些因变量和自变量的数据,收集到的数据拟合之后来进行参数估计。参数估计的目的主要是来估计出模型的偏回归系数的... 查看详情

超详细多元线性回归模型statsmodels_ols(代码片段)

多元线性模型的主要作用:(主要进行预测)通过建模来拟合我们所提供的或是收集到的这些因变量和自变量的数据,收集到的数据拟合之后来进行参数估计。参数估计的目的主要是来估计出模型的偏回归系数的... 查看详情

使用 std::nth_element 对 arma::mat 的行进行排序

】使用std::nth_element对arma::mat的行进行排序【英文标题】:Usingstd::nth_elementtosortrowsofanarma::mat【发布时间】:2021-02-1812:03:27【问题描述】:正如标题所提到的,我的目标是在犰狳矩阵上使用std::nth_element,该矩阵包含一组d维的N个点... 查看详情

r语言arma-garch怎样预测

...并确保估计过程给出正确的结果(即完整性检查)。然后使用真实的市场数据并拟合不同的模型。让我们生成合成iid数据并估算均值和协方差矩阵:#生成综合收益数据X<-rmvnorm(n=T,mean=mu,sigma=Sigma)#样本估计(样本均值和样本协... 查看详情

python数据统计分析

参考技术A1.常用函数库 scipy包中的stats模块和statsmodels包是python常用的数据分析工具,scipy.stats以前有一个models子模块,后来被移除了。这个模块被重写并成为了现在独立的statsmodels包。 scipy的stats包含一些比较基本的工... 查看详情

在 statsmodels 中使用卡尔曼滤波器时忽略 state_cov

】在statsmodels中使用卡尔曼滤波器时忽略state_cov【英文标题】:state_covisbeingignoredwhenusingtheKalmanfilterinstatsmodels【发布时间】:2021-08-2701:08:00【问题描述】:我正在尝试创建一个从statsmodels.tsa.statespace.MLEModel(下面的代码)派生的... 查看详情

时间序列分析arma模型原理及pythonstatsmodels实践(下)(代码片段)

目录4.ARMA模型预测销量实践4.1.统计分析包statsmodels4.2.常用函数概述4.2.1.绘制自相关、偏自相关图4.2.2.白噪声检验4.2.3.单位根检验4.2.3.1.单位根如何确定数据是否平稳?4.2.4.选定模型参数4.2.5.ARIMA模型函数4.2.5.1.常用方法4.2.5.2.... 查看详情

时间序列分析arma模型原理及pythonstatsmodels实践(下)(代码片段)

目录4.ARMA模型预测销量实践4.1.统计分析包statsmodels4.2.常用函数概述4.2.1.绘制自相关、偏自相关图4.2.2.白噪声检验4.2.3.单位根检验4.2.3.1.单位根如何确定数据是否平稳?4.2.4.选定模型参数4.2.5.ARIMA模型函数4.2.5.1.常用方法4.2.5.2.... 查看详情

sklearn 和 statsmodels 的逻辑回归结果不匹配

】sklearn和statsmodels的逻辑回归结果不匹配【英文标题】:Logisticregressionresultsofsklearnandstatsmodelsdon\'tmatch【发布时间】:2021-12-2600:17:09【问题描述】:我尝试使用sklearn和statsmodels库进行逻辑回归。他们的结果很接近,但不一样。比... 查看详情

AttributeError:模块“statsmodels.formula.api”没有属性“OLS”

】AttributeError:模块“statsmodels.formula.api”没有属性“OLS”【英文标题】:AttributeError:module\'statsmodels.formula.api\'hasnoattribute\'OLS\'【发布时间】:2019-10-2007:58:42【问题描述】:我正在尝试使用普通最小二乘法进行多变量回归。但它... 查看详情

为 Statsmodels 线性回归格式化数据

】为Statsmodels线性回归格式化数据【英文标题】:FormatDataforStatsmodelsLinearRegression【发布时间】:2018-04-2403:06:07【问题描述】:我正在尝试在Python中使用Statsmodels进行一些多元线性回归,但我在尝试组织数据时遇到了一些心理障碍... 查看详情