新版本的R Markdown基于pandoc,因此您可以轻松更改输出格式。
我的问题是从例如格式化格式化表格回归模型,因为LATEX和HTML表不能在pandoc转换中存活。
我知道从各种模型(stargazer,texreg,asprtable ......)生成LATEX / HTML输出的包,我知道函数/包,它们从数据框和矩阵生成降价表,但不是从其他模型生成对象。
有什么建议吗?
答案 0 :(得分:14)
我的above comment了解更多详情:
为可重复的示例定义一些模型:
lm0 <- lm(hp ~ wt, mtcars)
lm1 <- lm(qsec ~ hp, mtcars)
lm2 <- lm(qsec ~ wt, mtcars)
根据以下内容创建比较表:
require(memisc)
mtable123 <- mtable('Model 1' = lm0,
'Model 2' = lm1,
'Model 3' = lm2,
summary.stats = c('R-squared','F','p','N'))
通过简单调用pander
来渲染降价表:
pander(mtable123)
享受结果:
--------------------------------------------------
Model 1 Model 2 Model 3
----------------- ---------- ---------- ----------
**(Intercept)** -1.821\ 20.556***\ 18.875***\
(32.325) (0.542) (1.103)
**wt** 46.160***\ \ -0.319\
(9.625) (0.328)
**hp** \ -0.018***\ \
(0.003)
**R-squared** 0.434 0.502 0.031
**F** 22.999 30.190 0.945
**p** 0.000 0.000 0.339
**N** 32 32 32
--------------------------------------------------
感谢Roman Tsegelskyi在GSoC 2014中实现这一优秀功能。
答案 1 :(得分:5)
只需生成HTML或LATEX表。您所要做的就是将结果='asis'添加到代码块中。它将保持输出不变。
例如,使用xtable的代码对我有效。
```{r,results='asis'}
x<-rnorm(100)
y<-rnorm(100)
lm <- lm(y~x)
library(xtable)
print(xtable(summary(lm)),type='html')
```
答案 2 :(得分:2)
这是我几个小时前做的事情:
答案 3 :(得分:1)
使用sjPlot(用于简单呈现回归输出的优秀库)的另一种方法是使用no.output功能:
library(sjmisc)
library(sjPlot)
library(magrittr)
lm(qsec ~ wt, mtcars) %>%
sjt.lm(no.output = TRUE, show.se = TRUE) %>%
return() %>% .[["knitr"]] %>% asis_output
答案 4 :(得分:0)
我正在用一个使用流行(和较新)的knitr和kableExtra软件包的示例进行更新。
library(knitr)
library(xtable)
lm(hp ~ wt, mtcars) %>%
summary() %>%
xtable() %>%
kable()
现在,您可以访问Hao Zhu的kableExtra软件包中提供的所有出色的表格格式功能。
答案 5 :(得分:0)
huxtable包现在可以打印格式正确的回归表。 参见文档https://hughjonesd.github.io/huxtable/huxreg.html