0

Currently kableExtra 0.5.1 only supports Put a few rows of a table into one category. I wonder if there is any tweak to Put a few rows of a table into many categories programmatically like group_rows(kable_input = x, group_label = c("Group 1", "Group 2"), start_row = c(1, 5), end_row = c(2, 6)). Thanks

library(knitr)
library(kableExtra)

x <- knitr::kable(head(mtcars, 10), "latex")
kableExtra::group_rows(kable_input = x, group_label = c("Group 1", "Group 2"), start_row = c(1, 5), end_row = c(2, 6))
MYaseen208
  • 22,666
  • 37
  • 165
  • 309

1 Answers1

1

With dev version of kableExtra, you can use the index option to group rows in a similar way with add_header_above().

kable(mtcars[1:10, 1:5], "latex", booktabs = T) %>%
  group_rows(index = c(" " = 3, "Group 1" = 3, "Group 2" = 4))
Hao
  • 7,476
  • 1
  • 38
  • 59
  • This is cool. However, I would prefer to have a function with capabilities like `Labs <- c("Group 1", "Group 2") Start <- c(1, 5) End <- c(2, 6) knitr::kable(mtcars[1:10, 1:5], "latex", booktabs = T) %>% kableExtra::group_rows(group_label = Labs, start_row = Start, end_row = End)` so `Labs` and can be given outside the main function. Any thoughts, please. – MYaseen208 Sep 12 '17 at 16:09
  • @MYaseen208 You can always build index outside of the function as well. – Hao Sep 12 '17 at 16:48