【问题标题】:knitr: generating summary tables with tabs in the loop?knitr:在循环中生成带有标签的汇总表?
【发布时间】:2020-07-21 06:38:11
【问题描述】:

我试图使用 example 执行以下操作,但我想使用 lm() 的摘要表自动生成选项卡 我首先创建了包含所有汇总表的列表:list_lm

---
title: 
author: 
date: 
output:
    html_document
---

# {.tabset}
```{r}
list_lm=list()
for(i in 1:10){
  list_lm[[i]]=  lm(dist ~ speed, data=cars)
}
```


```{r,results='asis', echo=FALSE}
for(i in 1:10){
  cat('##',i,' \n')
  print(list_lm[[i]] )
}
```

但是当我执行 print(list_lm[[i]] ) 时它似乎没有产生很好的输出

【问题讨论】:

    标签: r tabs r-markdown knitr


    【解决方案1】:

    您可以使用knitr::kable 更好地格式化输出:

    ---
    output:
      html_document
    ---
      
    # {.tabset}
    ```{r}
    list_lm=list()
    for(i in 1:10){
      list_lm[[i]]=  lm(dist ~ speed, data=cars)
    }
    ```
    
    
    ```{r,results='asis', echo=FALSE}
    for(i in 1:10){
      cat('##',i,' \n')
      cat("Coefficients: \n")
      print(knitr::kable(list_lm[[i]]$coefficients)) 
      cat("\n")
      cat("Summary: \n")
      s <- summary(list_lm[[i]])
      print(knitr::kable(data.frame(sigma = s$sigma,r.squared=s$r.squared)) )
      cat('\n')
    }
    ```
    

    另一种选择是使用broompackage

    ---
    output:
      html_document
    ---
    
    `r knitr::opts_chunk$set(echo = FALSE, warning = FALSE, message = FALSE, cache = F)`
      
    # {.tabset}
    ```{r, ECHO = F, MESSAGE = F}
    library(dplyr)
    library(broom)
    list_lm=list()
    for(i in 1:10){
      list_lm[[i]]=  lm(dist ~ speed, data=cars)
    }
    ```
    
    
    ```{r,results='asis', echo=FALSE}
    
    for(i in 1:10){
      cat('##',i,' \n')
      list_lm[[i]] %>% tidy() %>% knitr::kable() %>% print
      cat('\n')
    }
    ```
    

    【讨论】:

    • 但是我会丢失模型中的所有信息,如 adj R^2、显着性检验、F 统计等
    • 抱歉,我尝试使用非常简单的模型,但我的实际模型具有连续和分类的预测变量
    • 您应该决定要显示关于模型的哪些信息,然后生成您选择的输出,请参阅我的编辑。
    • 谢谢!所以不可能打印原始输出?我正在研究 pander() 或 xtable() 函数,但我无法使其工作
    • 使用xtable,输出应该是pdf_document,而不是html_document
    猜你喜欢
    • 2017-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多