宏观经济作为随机森林项目来替代

问题描述 投票:0回答:1

我正在运行here用R开发的MRF示例。以下块工作完美:

set.seed(0)
data=matrix(rnorm(15*200),200,15)
#DGP
library(pracma)
X=data[,1:3]
y=crossprod(t(X),rep(1,3))*(1-0.5*I(c(1:200)>75))+rnorm(200)/2
trend=1:200
data.in=cbind(y,data,trend)

假设我们想要预测最后 50 个观测值。我们可以如下设置 oos_pos:

oos_position = nrow(data.in)-50: nrow(data.in)

但是,我在运行下面的代码时发现以下错误Error in commitee[b, ] <- rt.output$pred : number of items to replace is not a multiple of replacement length

有人能够复制以下代码块吗?

mrf.output = MRF(data = data.in,
                 y.pos = 1,
                 x.pos = 2:4,
                 S.pos = 2:ncol(data.in),
                 oos.pos = oos_position,
                 mtry.frac = 0.25,
                 trend.push = 4,
                 quantile.rate = 0.3,
                 B = 100)

有什么建议吗?

r random random-forest
1个回答
0
投票

我不认为

oos_position
指定不正确 - 它似乎指定了前 150 行,而不是最后 50 行。请尝试以下操作:

mrf.output = MRF(data = data.in,
                 y.pos = 1,
                 x.pos = 2:4,
                 S.pos = 2:ncol(data.in),
                 oos.pos = 151:200,
                 mtry.frac = 0.25,
                 trend.push = 4,
                 quantile.rate = 0.3,
                 B = 100)
© www.soinside.com 2019 - 2024. All rights reserved.