【问题标题】:Extract AIC from all models from stepwise regression从逐步回归的所有模型中提取 AIC
【发布时间】:2020-04-09 04:49:22
【问题描述】:

我正在尝试提取AIC值和相应的模型公式并制作表格。

library(Flury)
data(microtus)
mc=microtus
class(mc$Group)

# making 0,1,2 groups
mc$Group=as.numeric(mc$Group)-1

# First, I divide the datatset in a Known (known) and Unknown(uk) groups.

# Unknown Subset Construction
uk=subset(mc,Group==2)
known=subset(mc,Group!=2)
step(glm(Group ~., data = known, family = "binomial"), direction="both")

我想从逐步回归中提取AIC并制作一个这样的表格(当然不是手动):

Models                                                            AIC
Group ~ M1Left + M2Left + M3Left + Foramen + Pbone + Length + 
  Height + Rostrum                                               32.96
Group ~ M1Left + M3Left + Foramen + Pbone + Length + Height + 
  Rostrum                                                        30.97
Group ~ M1Left + M3Left + Foramen + Length + Height + Rostrum    29.31

Group ~ M1Left + M3Left + Foramen + Length + Height              27.1

【问题讨论】:

标签: r regression


【解决方案1】:

step 返回的模型对象有一个 anova 组件(一个 data.frame),其中包含每个步骤的 AIC。

> model <- step(glm(Group ~., data = known, family = "binomial"), direction="both")
> model$anova
       Step Df    Deviance Resid. Df Resid. Dev      AIC
1           NA          NA        80   14.96195 32.96195
2  - M2Left  1 0.003070711        81   14.96502 30.96502
3   - Pbone  1 0.340784942        82   15.30580 29.30580
4 - Rostrum  1 0.396842871        83   15.70264 27.70264

【讨论】:

    猜你喜欢
    • 2019-05-29
    • 2019-09-18
    • 2013-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-04
    • 1970-01-01
    • 2021-12-08
    相关资源
    最近更新 更多