【发布时间】:2018-11-12 21:53:05
【问题描述】:
我刚刚学习了 KableExtra,并且知道如何使用 mutate() 有条件地格式化整个列,如使用 mutate 的文档中所述:
mutate(
mpg = cell_spec(mpg, background = ifelse(mpg > 20, "red", "blue"))
)
但我不知道的是,如何在显示所有行的同时更改每列中某些行的背景颜色。
比如我的数据:
df <- data.frame( region1 = c("A", sample(1:5,3)),
region2 = c("B", sample(1:5,3)),
region3 = c("C", sample(1:5,3)),
region4 = c("A", sample(1:5,3)) )
现在我只想格式化第二行和第三行。我不想更改第一行和最后一行的颜色背景。这些第二和第三行在大于 1 时应为“红色”,或等于 1 时为黄色,小于 1 时为绿色。
有人可以帮我吗?
【问题讨论】:
-
只有第一行是字母,其他行都是数字吗?
-
我需要显示一个表格,其中几行是字符串,其余的是数字。我必须在不同的列中格式化数字。我不知道如何处理混合类型的数据框。我应该单独保留它们吗?如果是这样,我将如何将它们显示为单个表格..:-(
-
我尽量坚持整洁的数据格式(请参阅 PDF 了解 Hadley Wickham 关于该主题的论文)——简而言之,行是观察,而列是变量——所以我会保留字母和如果它们引用相同的变量,则将数字放在一起。
标签: r kable kableextra