首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GLMM :使用套索或脊线安装GLMM,并添加二项式cloglog链接

GLMM :使用套索或脊线安装GLMM,并添加二项式cloglog链接
EN

Stack Overflow用户
提问于 2020-04-05 23:26:06
回答 1查看 442关注 0票数 2

如何在glmnet中为套索/岭/弹性网回归指定链接函数?

我找到了下面的帖子,但不确定这对我需要指定一个cloglog链接有帮助。How to specify log link in glmnet?

我有一个具有二元响应0/1 (疾病no/yes)和几个预测变量的调查数据集,这些变量大多是二元分类(是/否,男性/女性),一些是计数(羊群大小),还有一些是具有多个水平的分类变量。

我之前使用二项式家庭的glmer()函数和link = cloglog运行了一个广义线性混合模型,因为这样做创建了我想要的结果截距的精确解释(在疾病研究中,来自此设置的截距等于在随机效应(在我的例子中是地理单位(村庄或子村或家庭))中指定的变量中的平均值“感染力”-易感人群被感染的速率。

由于现在有几个调查变量可供我使用,我想尝试使用glmnet进行套索和岭回归。我的理解是,最好是将glmm公式放入glmnet中。但是,我找不到任何有关如何添加链接的文档。我这样做了,在我认为可以工作的语法中,它确实运行了。但它也会在link函数中输入无用信息。

下面是一个可重复使用的示例:

代码语言:javascript
复制
library(msm)

library(glmnet)

set.seed(1) 

N = 1000

X = cbind( rbinom(n=N,size=1,prob=0.5), rnorm(n=N) ) 

beta = c(-0.1,0.1)
phi.true = exp( X%*%beta ) 

p = 1 - exp(-phi.true)

y = rbinom(n=N,size=1,prob = p)

dat <- data.frame(x=X,y=y)

x <- model.matrix(y~., dat)

glmnet(x, y, family="binomial", link="logit", alpha = 1, lambda = 2)

无论我输入'logit','cloglog‘,甚至是一个名字'adam’,我都会得到相同的输出。并且不能使用与GLMM相同的语法,因为在glmnet中必须是字符向量。

输出:

代码语言:javascript
复制
> glmnet(x, y, family="binomial"(link="logit"), alpha = 1, lambda = 2)

Error in match.arg(family) : 'arg' must be NULL or a character vector

> glmnet(x, y, family="binomial", link="logit", alpha = 1, lambda = 2)

Call:  glmnet(x = x, y = y, family = "binomial", alpha = 1, lambda = 2,      link = "logit") 

  Df      %Dev Lambda
1  0 -7.12e-15      2

> glmnet(x, y, family="binomial", link="cloglog", alpha = 1, lambda = 2)

Call:  glmnet(x = x, y = y, family = "binomial", alpha = 1, lambda = 2,      link = "cloglog") 

  Df      %Dev Lambda
1  0 -7.12e-15      2

> glmnet(x, y, family="binomial", link="adam", alpha = 1, lambda = 2)

Call:  glmnet(x = x, y = y, family = "binomial", alpha = 1, lambda = 2,      link = "adam") 

  Df      %Dev Lambda
1  0 -7.12e-15      2

在glmnet中不能更改二项式家族的默认链接函数吗?

EN

回答 1

Stack Overflow用户

发布于 2020-08-08 03:12:18

我想你应该使用family = binomial(link = "cloglog")

查看新的glmnet:https://cran.r-project.org/web/packages/glmnet/vignettes/glmnetFamily.pdf

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61044966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档