在不运行模型的情况下,在R Markdown中打印模型摘要



我运行了一个逻辑混合模型,该模型花费了大约3个小时才能适合。我将模型作为对象保存在我的全球环境中,我想将模型摘要包括在我的R Markdown文档中。但是,我不希望Knitr在将HTML放在一起时运行该模型(这需要3个小时才能运行)。我只想打印我已经运行的模型的摘要。

knitr出现了一个错误,说模型对象不在其范围中。

如何让Knitr访问我已经创建的模型对象,而在编译文档时不重新运行模型?

我将模型保存为RDS对象,然后将其加载到RmarkDown文档中。然后,如果要简单地显示您的运行代码,则可以在隐藏此事实时加载RDS对象。例如,请参见下面的代码,该代码适合并保存/重新加载线性模型:

fit <- lm(x ~ y)
saveRDS(fit, "fit.RDS")

然后,在rmarkDown文档

## (if you do not wish to hide the fact that you are loading it, then omit `echo = FALSE`)
```{r, echo = FALSE}
fit <- readRDS("fit.RDS")
## To show the code that fit the model. 
## `eval = FALSE` means the code is not run while knitting.
```{r, eval = FALSE}
fit <- lm(x ~ y)
```

首先要做的是使用ls()检查工作空间。如果不存在模型,则需要重新运行它。如果确实看到它,则只需在控制台中打印摘要即可。当您尝试编织文档时,它将需要运行整个RMD

最新更新