是否可以通过glmnet计算对脊/套索逻辑回归模型拟合的边际效应?

Is it possible to calculate marginal effects on a ridge / lasso logistic regression model fit through glmnet?

提问人:Alberto Agudo Dominguez 提问时间:10/16/2023 更新时间:10/16/2023 访问量:22

问:

似乎不支持应用包从模型中提取平均边际效应。我无法复制与拟合山脊回归时相同的行为,并且(我认为)后者不支持此计算。是否有任何选项可以从逻辑岭回归模型计算边际效应?marginsglmnetglm

R 逻辑回归 GLM GLMNET 边际效应

评论


答:

0赞 Vincent 10/16/2023 #1

的开发版本(即将在 CRAN 上发布为 0.16.0 版)支持 。首先,安装软件包:marginaleffectstidymodels

remotes::install_github("vincentarelbundock/marginaleffects")

然后,完全重新启动。R

最后,请注意,仅当通过 的公式接口(而不是矩阵形式)指定拟合时才支持:glmnettidymodels

library(tidymodels)
library(marginaleffects)

penguins <- modeldata::penguins |> na.omit()

mod <- linear_reg(mode = "regression", penalty = 1) |>
    set_engine("glmnet") |>
    fit(bill_length_mm ~ ., data = penguins)

avg_slopes(mod, newdata = penguins)
# 
#               Term           Contrast Estimate
#  bill_depth_mm     dY/dX               0.00000
#  bill_length_mm    dY/dX               0.00000
#  body_mass_g       dY/dX               0.00142
#  flipper_length_mm dY/dX               0.14098
#  island            Dream - Biscoe      0.00000
#  island            Torgersen - Biscoe  0.00000
#  sex               male - female       0.00000
#  species           Chinstrap - Adelie  5.35902
#  species           Gentoo - Adelie     0.00000
# 
# Columns: term, contrast, estimate 
# Type:  numeric