Я довольно много начинаю с программным форматированием вывода R, но у меня есть базовое понимание возможностей knitr
, xtable
, Markdown и Pandoc конвертировать один формат разметки в другой. Я хочу записать R-фрейм данных df
в таблицу HTML и применить конкретный цвет к каждой строке, удовлетворяющей условию (например, df$outcome == 1
). Однако я не уверен, какой пакет выполнил бы это простым и эффективным способом, но из просмотра нескольких потоков форматирования таблицы (xtable
thread 1, xtable
thread 2, kable
документация 1), я собрал это kable
и xtable
могут быть способны выполнить мой желаемый результат.
Чтобы пояснить, вот мой воспроизводимый пример (используя xtable
, но меня интересует ответ с помощью kable
или другого пакета):
set.seed(123)
df <- data.frame(id = sample(1:100, 20, replace = TRUE),
inputval = sample(seq(0, 1, by=0.01), 20, replace = TRUE),
outcome = sample(1:4, 20, replace = TRUE))
library(xtable)
dfxt <- xtable(df)
knit2html(input = "~/rowcolor_ex.Rmd",
output = OUTPUTHERE
stylesheet = "STYLESHEET.css")
с knit2html
, ссылаясь на файл с именем "rowcolor_ex.Rmd", показанный ниже:
```{r,echo=FALSE,results='asis',warning=FALSE,message=FALSE}
print(dfxt,
type = "html",
include.rownames = FALSE,)
```
Я понимаю, что если я буду использовать xtable
, я бы включил один или несколько аргументов после print(dfxt,
части вызова функции в документе Rmd
и этот поток показывает аргумент add.to.row
, который имеет смысл для type = "latex"
, но неясно, как код изменится для вывода HTML. Кроме того, я не уверен, что если ссылаться на таблицу стилей CSS в knit2html
будет переопределять форматирование таблицы HTML.