gpt4 book ai didi

r - 如何使用 MIDASR 包在 MIDAS 模型中使用参差不齐的边缘数据进行预测?

转载 作者:行者123 更新时间:2023-12-04 11:31:04 25 4
gpt4 key购买 nike

我正在尝试使用带有 midasr 的月度变量生成季度变量的提前 1 步预测。包裹。我遇到的麻烦是我只能估计一个MIDAS当样本中每月观察的数量正好是季度观察数量的 3 倍时模型。

我如何在 midasr 中进行预测当每月观察的数量不是季度观察的精确倍数时(例如,当我有一个新的每月数据点要用于更新预测时)?

例如,假设当我有 (n) 时,我运行以下代码以生成提前 1 步的预测。季度观察和 (3*n)每月观察:

#first I create the quarterly and monthly variables
n <- 20
qrt <- rnorm(n)
mth <- rnorm(3*n)

#I convert the data to time series format
qrt <- ts(qrt, start = c(2009, 1), frequency = 4)
mth <- ts(mth, start = c(2009, 1), frequency = 12)

#now I estimate the midas model and generate a 1-step ahead forecast
library(midasr)
reg <- midas_r(qrt ~ mls(qrt, 1, 1) + mls(mth, 3:6, m = 3, nealmon), start = list(mth = c(1, 1, -1)))
forecast(reg, newdata = list(qrt = c(NA), mth =c(NA, NA, NA)))

这段代码工作正常。现在假设我有一个要包含的新月度数据点,以便新的月度数据为:
nmth <- rnorm(3*n +1)

我尝试运行以下代码来估计新模型:
reg <- midas_r(qrt ~ mls(qrt, 1, 1) + mls(nmth, 2:7, m = 3, nealmon), start = list(mth = c(1, 1, -1))) #I now use 2 lags instead 3 with the new monthly data

但是我收到一条错误消息: 'Error in mls(nmth, 2:7, m = 3, nealmon) : Incomplete high frequency data'
我在网上找不到有关如何处理此问题的任何信息。

最佳答案

不久前 I had to do有类似的问题。如果我没记错的话,您首先需要使用具有减少滞后的旧数据集来估计模型,因此不再使用 3:6您应该使用滞后 2:6滞后:

reg <- midas_r(qrt ~ mls(qrt, 1, 1) + mls(mth, 2:6, m = 3, nealmon), start = list(mth = c(1, 1, -1)))

然后假设您观察到更高频率数据的新值 - new_value
new_value <- rnorm(1)

然后您可以使用这个新观察到的值来预测较低的频率变量,如下所示:
forecast(reg, newdata = list(mth = c(new_value, rep(NA, 2))))

关于r - 如何使用 MIDASR 包在 MIDAS 模型中使用参差不齐的边缘数据进行预测?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29007981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com