问题标签 [autoregressive-models]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Statsmodels ARMA 训练数据与用于预测的测试数据
我正在尝试测试 ARMA 模型,并通过此处提供的示例进行操作:
http://www.statsmodels.org/dev/examples/notebooks/generated/tsa_arma_0.html
我不知道是否有一种直接的方法可以在训练数据集上训练模型,然后在测试数据集上对其进行测试。在我看来,您必须将模型拟合到整个数据集上。然后,您可以进行样本内预测,它使用与训练模型相同的数据集。或者您可以进行样本外预测,但这必须从训练数据集的末尾开始。我想做的是将模型拟合到训练数据集上,然后在不属于训练数据集的完全不同的数据集上运行模型,并获得一系列提前 1 步的预测。
为了说明这个问题,这里是来自上面链接的缩写代码。您会看到该模型正在拟合 1700-2008 年的数据,然后预测 1990-2012 年。我遇到的问题是 1990-2008 年已经是用于拟合模型的数据的一部分,所以我认为我正在预测和训练相同的数据。我希望能够获得一系列没有前瞻偏差的 1 步预测。
python - Python / statsmodels - 样本外预测
我正在尝试使用 statsmodels 执行自回归多元线性回归(类似于y ~ y_1 + X1 + X2
,而不是类似于 ARMA)。更具体地说,我正在寻找一种摆脱样本结果的方法。当我使用预测方法时,我得到了样本结果,这意味着它使用估计变量的先前历史值而不是变量的估计值。
谢谢你的帮助。
matlab - 新测试集上的 NARX 神经网络测试?
训练 NARX 网络后。我想在独立测试集“testX'”上评估模型。但它返回一个错误。我正在通过 forecastLoad = sim(net, testX')' 测试模型。我们需要添加延迟在测试集中?我不知道我在哪里犯了错误。
statsmodels - statsmodels ARMAResults.predict 训练数据长度后的开始索引返回不正确的数组
我statsmodels.tsa.arima_model.ARMAResults.predict
用来确定 ARIMA 模型的预测值。当我使用训练数据中的起始索引调用该函数时,该函数返回正确的值数组。但是,如果我使用训练数据之外的起始索引,则返回的数组由于某种原因是完全不正确的。
原始代码,带有start=1000
和end=1481
。r
是ARMAResult
来自先前拟合的具有 481 个数据点的模型。
注意:这end-1
是因为调用 predict 返回一个数组,其中包含 的索引处的预测end
。
从这段代码中,我得到以下输出:
我通过使用此代码切片列表来解决问题。
输出:
我的问题是,为什么会发生这种情况?我end
可以超出原始数据集的长度并predict
完美返回,但即使start
索引是数据集长度之外的第一个数字,返回的数组也太长并且数字不同。我的猜测是它与数据如何需要在下一个值之前计算先前的值有关,但是这些值已经是ARMAResult
对象的一部分,我完全被卡住了。
r - 用于异常值检测的多个位置每小时数据的 ARIMA
试图解决一个问题一段时间。我有一个数据框,其中包含
- 日期和时间(大约 1 年的每小时数据)
- 位置(1000 个不同的位置)
- 流量(我想预测的结果)
贝娄是数据的一个例子
我正在尝试一段时间为每个位置制作一个时间序列。低于我尝试过的,但我没有得到我正在寻找的结果
目的是消除季节性并运行 ARIMA 模型以查找每个位置的异常值。
如何为每个位置创建一个单独的时间序列(ARIMA 模型)?
先感谢您。埃里克
r - 时间序列中的日期不一致
我正在尝试使用 ARIMA 模型来预测每天进店的客户数量。
我目前正在使用 R 来构建这个模型。但是,我拥有的数据不一致。附图是我的问题的一个例子。
对于这个例子,我有 4 位顾客在 3/14 进店,3 位顾客在 3/13 进店,0 位顾客在 3/12,3/11 进店。由于我想预测进店的顾客数量,我将按日期对数据进行分组。如果我按日期分组,我将不得不为 3/12、3/11 插入 0 个客户,因为他们不在我的数据库中。问题是:1.我不知道如何在 R 中自动插入缺失的日期。2.这会影响我模型的准确性吗?3.在这种情况下,我会得到更好的结果来预测每周而不是每天吗?谢谢
有谁知道我该怎么办?我还能在日常基础上进行预测吗?有什么办法可以在 R 中解决这个问题吗?
r - 限制后 R - AIC 的 vars 包
我对 vars 包中的加拿大数据拟合了一个向量自回归模型,然后根据 1.64 的 t 值进行限制。
然后我想获得修改后的信息标准,但看不到这样做的方法。有谁知道怎么做?
编辑 1
所以我尝试为无限制模型推导出 AIC:
从新介绍到多时间序列分析 Luetkepohl,Helmut 2007,第 147 页:
$$AIC(m) = ln(det(covres)) + \frac{2mk^2}{T}$$
m 是滞后阶数,k 是系列数,T 是样本量
但我得到:
-6.451984 + 2*2*4^2/84 = -5.69
不等于 -5.600280680
r - R中ACP模型的预测区间
我正在尝试自学一些关于为“计数”数据建模时间序列的知识。我发现了一个非常简单的模型,即自回归条件泊松模型 (ACP) (Heinen 2003),它有一个随附的 R 包 {acp}。我无法找到有关如何为从 ACP 模型做出的预测构建 n 步提前预测区间的信息。不方便的是,预测不适用于这些 ACP 对象。关于如何构建这些的任何想法?
此外,在将 predict() 与 ACP 模型一起使用时,您必须包含一个参数 newydata,它是您要预测的值的数据框...?也许我误解了这一点,但在预测 yhat 时似乎你需要已经有了 y。为什么?
下面我从 {acp} 包中复制/粘贴了示例代码。
predict() 命令中的第二个参数是观察到的 y 值的向量,这让我感到困惑。
谢谢!
r - 考虑 GAMM 中时间序列的自相关
我正在调查环境/海洋因素如何影响渔业上岸量。我在 R 中有以下 GAMM,使用该gam
函数:
fisherID
是识别个体渔民的变量,是 GAMM 的随机部分。
effort
用作抵消,以使渔获物的重量标准化为使用的渔具数量。
day.in.series
是时间序列 (1 - 6000) 中的有序天数,month
是显示季节性影响的日历月。所有其他变量都是各种环境数据。
ACF:
和部分 ACF:
图表明数据中存在自相关。在 ACF 图中,在延迟 30 左右之前有明显的滞后,我不完全确定部分 ACF 图告诉我什么。
根据我的研究,我需要将 corARMA 合并到我的模型中。可以使用该gam
功能来完成,还是gamm
需要使用该功能?我也不确定随机变量 ( fisherID
) 和偏移量是否会以任何方式影响这一点。