You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用kableExtra生成HTML表格时无法合并重复行的解决方法求助

解决kableExtra合并重复单元格失效的问题

使用kableExtra生成HTML格式表格时,第一列存在重复单元格,调用collapse_rows()方法无法实现合并,具体场景如下:

数据示例

df <- data.frame( Vegitation  = c("Tree", "Tree", "Tree" , "Fruit", "Fruit", "Water"),
              Non_sense_var1 = c(17,14,1,20,21,0),
              Non_sense_var2 = c(15,1,11,2,2.1,60),
              Non_sense_var3 = c(4,6,14,2,7,7)
              )

原表格代码

header_line <- c("Vegitation", "Value 1", "Value 2", "Value 3")

kbl(df, escape = F, align = 'lcccc')%>%
add_header_above( header_line, bold = T, line = F, font_size = 11) %>%
kable_styling(full_width = T, font_size = 10, html_font = 'arial') %>%
kable_classic() %>%
column_spec(1, width = "2.2cm", bold = TRUE ) %>%
column_spec(2, width = "2.2cm") %>%
column_spec(c(3:4), width = "2.2cm",  color = '#FF7F0E') %>%
collapse_rows(1, valign = "top") 

运行上述代码后,第一列的重复值(如"Tree""Fruit")并未合并,仍逐行显示重复内容。

已知背景

截至2022年9月27日,kableExtra在该场景下的合并行功能存在问题,暂无官方正式修复方案。

可行解决方向

  • 安装开发版修复:从GitHub安装kableExtra的开发版本,可能修复该问题,但可能破坏表格其他格式,执行命令:
devtools::install_github("haozhu233/kableExtra")
  • 更换其他包实现:使用gt包替代kableExtra,可轻松实现重复单元格合并,示例代码如下:
library(gt)

df %>%
  gt() %>%
  cols_label(
    Vegitation = "Vegitation",
    Non_sense_var1 = "Value 1",
    Non_sense_var2 = "Value 2",
    Non_sense_var3 = "Value 3"
  ) %>%
  tab_style(
    style = list(cell_text(weight = "bold")),
    locations = cells_column_labels("Vegitation")
  ) %>%
  tab_style(
    style = cell_text(color = "#FF7F0E"),
    locations = cells_body(columns = c(Non_sense_var2, Non_sense_var3))
  ) %>%
  cols_width(everything() ~ px(85)) %>%
  opt_table_font(font = list("arial")) %>%
  tab_options(
    table.width = pct(100),
    table.font.size = 10,
    heading.font.size = 11
  ) %>%
  row_group_by(Vegitation) %>%
  tab_options(row_group.as_column = TRUE)

内容的提问来源于stack exchange,提问作者Alokin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 00:15:50