首页 > 解决方案 > 无法使用 kable 和 for 循环打印表格

问题描述

这打印为常规代码,但根本不使用 rmarkdown。问题可能出在代码的压缩和样式选项中。有什么想法吗?

{r printing,echo=FALSE, cache=FALSE, results='asis'}


library(tidyverse)
library(kableExtra)
library(dotwhisker)
library(broom)


kbl <- function (df) {
  cat("\n\n")
  df2<-kable(df) %>% kable_styling(bootstrap_options = c("striped", "condensed"))
  print(df2)
  cat("\n\n")
}


df <- mtcars
nested_inter <- mtcars %>% group_by(gear) %>% 
  nest() ## groups all the data by the sub series
nested_inter <- nested_inter  %>% 
  mutate (model =  map(data, 
                       ~lm(formula = mpg ~ cyl + drat + hp +wt , data = .)))


  for(i in seq(nrow(nested_inter))) {
    kbl(glance(nested_inter$model[[i]]))
    t1<- nested_inter$model[[i]] %>% broom::tidy() 
    kbl(t1)
  }
    

谢谢!

标签: rr-markdown

解决方案


这更多的是你想要的吗?您的代码示例没有正确的 Rmarkdown 语法。

---
title: "Kable output"
output: html_document
---
```{r printing,echo=FALSE, message = FALSE, warning =     FALSE,cache=FALSE, results='asis'}


library(tidyverse)
library(kableExtra)
library(dotwhisker)
library(broom)


kbl <- function (df) {
  cat("\n\n")
  df2<-kable(df) %>% kable_styling(bootstrap_options =     c("striped", "condensed"))
  print(df2)
  cat("\n\n")
}


df <- mtcars
nested_inter <- mtcars %>% group_by(gear) %>% 
  nest() ## groups all the data by the sub series
nested_inter <- nested_inter  %>% 
  mutate (model =  map(data, 
                       ~lm(formula = mpg ~ cyl + drat + hp     +wt , data = .)))


for(i in seq(nrow(nested_inter))) {
  kbl(glance(nested_inter$model[[i]]))
  t1<- nested_inter$model[[i]] %>% broom::tidy() 
  kbl(t1)
}
```

在此处输入图像描述


推荐阅读