Markdown格式的回归表(在R Markdown v2中灵活使用)

时间:2014-06-21 13:39:45

标签: r knitr pandoc r-markdown

新版本的R Markdown基于pandoc,因此您可以轻松更改输出格式。

我的问题是从例如格式化格式化表格回归模型,因为LATEX和HTML表不能在pandoc转换中存活。

我知道从各种模型(stargazer,texreg,asprtable ......)生成LATEX / HTML输出的包,我知道函数/包,它们从数据框和矩阵生成降价表,但不是从其他模型生成对象。

有什么建议吗?

6 个答案:

答案 0 :(得分:14)

我的above comment了解更多详情:

  1. 为可重复的示例定义一些模型:

    lm0 <- lm(hp ~ wt, mtcars)
    lm1 <- lm(qsec ~ hp, mtcars)
    lm2 <- lm(qsec ~ wt, mtcars)
    
  2. 根据以下内容创建比较表:

    require(memisc)
    mtable123 <- mtable('Model 1' = lm0,
                'Model 2' = lm1,
                'Model 3' = lm2,
                summary.stats = c('R-squared','F','p','N'))
    
  3. 通过简单调用pander来渲染降价表:

    pander(mtable123)
    
  4. 享受结果:

    --------------------------------------------------
         &nbsp;        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    
    --------------------------------------------------
    

  5. 感谢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)

这是我几个小时前做的事情:

  1. 一些数据:

    <input type="text" id="input1" value="2" readonly="readonly"/>
    <input type="button" value="Multiply by 2" onclick="multiply2()"/>
  2. 我们使用包```{r} lm1 <- lm(qsec ~ hp, mtcars) lm2 <- lm(qsec ~ wt, mtcars) ```

    sjPlot

    下一部分需要在降价区域之外:

  3.   

    htmltools :: includeHTML( “output.html”)

    enter image description here

答案 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