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

Extract Best Model's Formula from bestglm Package in R

提问人:Hack-R 提问时间:12/23/2014 最后编辑:Hack-R 更新时间:12/23/2014 访问量:6179

问:

在 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")

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

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

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

R GLM系列

评论

1赞 David Arenburg 12/23/2014
你在这里缺少一两个包裹
0赞 Hack-R 12/23/2014
@DavidAreburg 哦,用.很公平。还有其他人吗?xlsxread.xlsx
0赞 David Arenburg 12/23/2014
rjava似乎也...因为我无法安装它,并且懒得安装它所需的所有依赖项
0赞 Hack-R 12/23/2014
@DavidArenburg是的,可能是 的依赖项或其他东西,但它不是这里使用的库。你可以用 .rJavaxlsxread.xlsxread.table

答:

6赞 Jesse Anderson 12/23/2014 #1

尝试:formula

formula(res.best.logistic$BestModel)