首页 > 解决方案 > R中带有Kable的表格单元格条件

问题描述

如果单元格(data_a)与 kable 的 data_b 匹配,我尝试为单元格着色,我在 cell_spec 中看到了 ifelse 函数,但我没有成功。

data_a <- data.table("01:05", "01:05", "01:16", "00:33", "00:52")
data_b <- data.table("00:02", "01:05", "02:30")

kable(data_a, row.names = FALSE, format = "html") %>%
      kable_styling(full_width = F, position = "center")

谢谢

标签: rdatatablekablekableextra

解决方案


试试这样:

library(data.table)
data_a <- data.table(a =c("01:05", "01:05", "01:16", "00:33", "00:52"))
data_b <- data.table(b =c("00:02", "01:05", "02:30"))
library(kableExtra)

data_a %>%
  mutate(a = cell_spec(a, "html", color = ifelse(a %in% data_b$b, "green", "red"))) %>%
  kable(format = "html", escape = F) %>%
  kable_styling("striped", full_width = F)

在此处输入图像描述


推荐阅读