从R中的bestglm包中提取最佳模型的公式

Hac*_*k-R 3 r glm

在R中,您可以使用该bestglm包运行所有子集回归,并根据您指定的标准选择"最佳"模型.

一个可重复的例子:

require(xlsx)
require(bestglm)
lbw <- read.xls("http://www.umass.edu/statdata/statdata/data/lowbwt.xls")
## Prepare data
lbw.for.best.logistic <- within(lbw, {
    id   <- NULL        # Delete
    bwt  <- NULL
    race <- NULL
    ptl  <- NULL
    ftv  <- NULL

    y    <- low         # bwt into y
    low  <- NULL        # Delete bwt
})

## Reorder variables
lbw.for.best.logistic <-
    lbw.for.best.logistic[, c("age","lwt","race.cat","smoke","preterm","ht","ui","ftv.cat","y")]

## Perform
res.best.logistic <-
    bestglm(Xy = lbw.for.best.logistic,
            family = binomial,          # binomial family for logit
            IC = "AIC",                 # AIC chosen to select models
            method = "exhaustive")
Run Code Online (Sandbox Code Playgroud)

现在,我想要做的是从最佳结果中提取回归公式,以便我可以将它传递给我的函数中的另一个统计过程.

存储的最佳模型res.best.logistic$BestModel,但存储在该str()对象中的公式只是调用而y~.不是所选的实际最佳模型.

有没有办法确定最佳模型的公式?

bli*_*sse 6

试试formula:

formula(res.best.logistic$BestModel)
Run Code Online (Sandbox Code Playgroud)