如何估计R中的分位数回归预测

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

我有一个矩阵,其中p >> n,所以我用

X=mvtnorm::rmvnorm(300,mean=rep(0,400)) 
Y=X[,3]+X[,5]+X[,7]+X[,9]
fit1 = quantreg::rq.fit.lasso(y=Y,x=X,tau=0.5)

我如何基于此做出预测?如果我使用标准预测,则会得到:

Error in UseMethod("predict") : no applicable method for 'predict' applied to an object of class "list"

r regression
1个回答
0
投票

看着?quantreg::rq.fit.lasso,我发现以下语句:

返回带有系数,残差,tau和lambda的列表组件。从“ rq” (按预期)调用时,返回对象具有类“ lassorqs”。

强调是我的。尝试使用

library(mvtnorm)
library(quantreg)

set.seed(42)
X = mvtnorm::rmvnorm(300,mean=rep(0,400))
Y = X[,3]+X[,5]+X[,7]+X[,9]
df <- data.frame(Y, X)
cj = quantreg::rq(Y ~ ., tau=0.5, data = df, method = "lasso")

preds <- predict(cj, df)
head(preds)
         1          2          3          4          5          6 
 4.2973424  0.9515407 -0.2925830 -0.7729388  3.0123608 -3.9507194 
© www.soinside.com 2019 - 2024. All rights reserved.