【发布时间】:2021-07-16 12:07:29
【问题描述】:
我有以下数据框:
library(knitr)
library(kableExtra)
library(dplyr)
df<- structure(list(date = c("2021-04-12", "2021-04-13", "2021-04-14","2021-04-15", "2021-04-16", "Avg", "Change", "Change (%)"),
Audi = c(3.3, 3.7, 6.6, 6.9, 6.8, 6.3, 0.5, 5.5),
Bmw = c(1.1, 1.7, 4.1, 4.2, 4, 3.4, -2.5, -4.1), Lexus = c(9.8, 0.3,2.3, 2.2, 2, 1.4, 1.9, 3.2)), row.names = c(NA, -8L), class = "data.frame")
我想使用此代码在特定列中突出显示满足条件 df$date == c("Change", "Change (%)") 的行。此外,我想用灰色突出显示除列 date 之外的所有列的行 which(df$date == "Avg")。
df %>%
kable() %>%
kable_classic(full_width = F, html_font = "Calibri") %>%
row_spec(which(df$date == "Avg"), bold = T, background = "#F2F2F2") %>%
row_spec(which(df$date == c("Change", "Change (%)")), bold = T, background = ifelse(df$Audi >= 0, "#C6EFCE", "#FFC7CE"))
我发现了一点类似的问题here,但没有弄清楚如何在我的代码中实现它
-
如何突出显示除日期以外的所有列的 which(df$date == c("Change", "Change (%)")) 行(条件:正值为绿色,负值为红色)
-
如何用灰色突出显示除日期以外的所有列的 which(df$date == c("Avg")) 行
-
我还发现 here 可以更改添加
mutate_all(~cell_spec(.x, color = ifelse(.x < 0, "red"," green")))的表格中所有值的颜色,但是出现错误
UseMethod("tbl_vars") 中的错误: 没有适用于“c('kableExtra', 'knitr_kable')”类对象的“tbl_vars”方法
我该如何解决这些问题?
【问题讨论】:
-
在这篇文章中使用了
formattable包,但是,我需要坚持kable/knitr
标签: r knitr kable kableextra