1 year ago
#382339
user63230
kable colour row and column cells by position (not cell values)
Given:
library(kableExtra)
df <- iris[c(1:10), c(1:5)]
df
# Sepal.Length Sepal.Width Petal.Length Petal.Width Species
# 1 5.1 3.5 1.4 0.2 setosa
# 2 4.9 3.0 1.4 0.2 setosa
# 3 4.7 3.2 1.3 0.2 setosa
# 4 4.6 3.1 1.5 0.2 setosa
# 5 5.0 3.6 1.4 0.2 setosa
# 6 5.4 3.9 1.7 0.4 setosa
# 7 4.6 3.4 1.4 0.3 setosa
# 8 5.0 3.4 1.5 0.2 setosa
# 9 4.4 2.9 1.4 0.2 setosa
# 10 4.9 3.1 1.5 0.1 setosa
I want to use kable
to colour every second row for certain columns.
Desired output:
A manual way to do this might be the following and then try and merge them together:
kable(df) %>%
kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)
kable(df[, c(2:3)]) %>%
row_spec(seq(1, nrow(df), 2), background = "red") %>%
kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)
kable(df[, c(4:5)]) %>%
row_spec(seq(1, nrow(df), 2), background = "blue") %>%
kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)
However, I want an automated way of doing it in one call. Is there a way to combine row_spec
for specific columns by position?
thanks
r
kable
kableextra
0 Answers
Your Answer