#r
Вопрос:
Я пытаюсь создать функцию для таблицы DT, в которой, просто указав имя столбца в параметре, столбец должен быть скрыт
dt_table <- function(data,
colhidden = c(a)){
datatable(data,
options = list(
columnDefs = list(
list(visible=FALSE, targets=colhidden)
)
))
}
dt_table(iris,colhidden = c('Species'))
Но, к сожалению, колонка не скрывается. Кто-нибудь может мне помочь?
Ответ №1:
targets
нужен номер столбца, с которым вы можете связаться match
. Попробуй —
library(DT)
dt_table <- function(data, colhidden) {
datatable(data,
options = list(
columnDefs = list(
list(visible=FALSE, targets=match(colhidden, colnames(data))))
)
)
}
dt_table(iris,colhidden = c('Species'))
dt_table(iris,colhidden = c('Species', 'Sepal.Length'))
Комментарии:
1. Спасибо, но если я добавлю
rownames = F
в свою функцию, имена строк не будут скрыты. Почему?2. Это не имеет отношения к заданному вопросу, но если я его использую
datatable(data, options = list(columnDefs = list(list(visible=FALSE, targets=match(colhidden, colnames(data))))), rownames = FALSE)
, он скрывает имена строк для меня.