R 在启动时使用自适应套索功能时出错

R 在启动时使用自适应套索功能时出错,r,glmnet,statistics-bootstrap,lasso-regression,R,Glmnet,Statistics Bootstrap,Lasso Regression,我目前有以下代码。在boot()函数之外运行时,该函数可以工作,但在使用boot()函数时,它会提供错误信息 t.star[r,]中的错误由alassoOLS_ydot_n10_fn返回的向量长度不是常数,而是取决于glmnet选择的变量数量 我修改了你的函数如下: alassoOLS_ydot_n10_fn <- function(data,index){ x <- data[index,-1] y <- data[index,1] cv.out <- c

我目前有以下代码。在boot()函数之外运行时,该函数可以工作,但在使用boot()函数时,它会提供错误信息


t.star[r,]中的错误由
alassoOLS_ydot_n10_fn
返回的向量长度不是常数,而是取决于
glmnet
选择的变量数量
我修改了你的函数如下:

alassoOLS_ydot_n10_fn <- function(data,index){ 
  x <- data[index,-1]
  y <- data[index,1]
  cv.out <- cv.glmnet(x,y,alpha=1,nfolds=10) 
  bestlam <- cv.out$lambda.min #the best lambda chosen by CV
  lasso.mod <- glmnet(x,y,alpha=1,lambda=bestlam, penalty.factor = 1/abs(best_ridge_coef.ydot.n10))
  coef <- as.vector(coef(lasso.mod))[-1]
  coef_nonzero <- coef != 0
  ls.obj <- lm(y ~x[, coef_nonzero, drop = FALSE])
  ls_coef <- (ls.obj$coefficients)[-1]
  # Generate a fixed-length vector fo OLS coefficients
  # The coefficients of variables not selected by glmnet were set to zero.
  vect_coef <- rep(0,length(coef_nonzero))
  vect_coef[coef_nonzero] <- ls_coef
  return(vect_coef)
}
产出报告如下

ORDINARY NONPARAMETRIC BOOTSTRAP

Bootstrap Statistics :
       original       bias    std. error
t1*  0.00000000 -0.002330197  0.02319543
t2*  0.13530886 -0.001906712  0.09889174
t3* -0.19509877 -0.013020365  0.07251921
t4* -0.01954785  0.015227018  0.09184750
t5*  0.05600451  0.008896392  0.08729263
t6*  0.12978757 -0.013795860  0.11320119
t7*  0.06525111 -0.007208380  0.09703813
t8*  0.09368079 -0.017343037  0.08947958
t9* -0.09518469 -0.003352512  0.08575450

这正是我需要的。谢谢@很高兴能帮助你!请接受并投票表决我的答案。非常感谢。
set.seed(1)
ydot_matrix_n10 <- matrix(runif(1000), ncol=10)
best_ridge_coef.ydot.n10 <- 10
boot(ydot_matrix_n10,alassoOLS_ydot_n10_fn,R=50)
ORDINARY NONPARAMETRIC BOOTSTRAP

Bootstrap Statistics :
       original       bias    std. error
t1*  0.00000000 -0.002330197  0.02319543
t2*  0.13530886 -0.001906712  0.09889174
t3* -0.19509877 -0.013020365  0.07251921
t4* -0.01954785  0.015227018  0.09184750
t5*  0.05600451  0.008896392  0.08729263
t6*  0.12978757 -0.013795860  0.11320119
t7*  0.06525111 -0.007208380  0.09703813
t8*  0.09368079 -0.017343037  0.08947958
t9* -0.09518469 -0.003352512  0.08575450