提取glm

时间:2019-06-16 21:09:53

标签: r glm

我想针对调用glm的每个参数提取Akaike的信息标准(AIC),贝叶斯信息标准(BIC)或仅提取似然比检验(LRT)。

这是一些示例数据

set.seed(12345)
x1 <- rnorm(100)
f1 <- factor(rbinom(100, size=2, prob=.5))
y <- rbinom(100, size=1, prob=1/(1 + exp(.7*x1 + (f1==2))))
fit <- glm(y ~ x1 + f1, family=binomial)
summary(fit)

现在,当上面的代码运行时,我得到

Coefficients:
            Estimate Std. Error z value Pr(>|z|)   
(Intercept)  0.09408    0.44406   0.212  0.83222   
x1          -0.74737    0.23484  -3.182  0.00146 **
f11         -0.02476    0.53768  -0.046  0.96327   
f12         -1.53873    0.67443  -2.282  0.02252 * 

z value和相应的p值基于Wald统计信息,但我希望对模型中的每个参数使用LRT,AIC或BIC。

如果我使用drop1(),则可以获取模型公式中每个的AIC和LRT。使用step()函数时的情况与此相同,因为它使用drop1(),因此实际上只能容纳 terms 中的更改,而不能容纳 parameters 。对于分类(因子)预测变量,此问题最为明显。

> drop1(fit, test="LRT")
Single term deletions

Model:
y ~ x1 + f1
       Df Deviance    AIC     LRT  Pr(>Chi)    
<none>      117.66 125.66                      
x1      1   129.78 135.78 12.1198 0.0004989 ***
f1      2   125.81 129.81  8.1519 0.0169763 *  

是否存在可以为每个参数实现相似功能的功能?

  • 我猜测可以运行一系列模型update(),但是我希望某些功能已经在某处实现。
  • 平方Wald检验在渐近上等效于LRT,因此可以很容易地从Wald统计中得出近似值。我希望获得实际值。

0 个答案:

没有答案