Вы можете создать новый столбец, содержащий числовые значения, и использовать этот столбец в аргументе valueColumns
formatStyle
. Вы также можете скрыть это с помощью опции columnDefs
. Вот пример:
dat <- data.frame(
C1 = c("A", "B", "C"),
C2 = c(4, "5%", "-6%")
)
dat$C2numeric <- stringr::str_extract(dat$C2, "\\-*\\d+\\.*\\d*")
datatable(dat, options = list(
columnDefs = list(
list(targets=-1, visible=FALSE)
)
)) %>%
formatStyle(2, valueColumns = ncol(dat),
backgroundColor = styleInterval(c(-0.000001,0.000001), c("red",'lightgrey','lightgreen')))