Отмена выбора столбцов в DT :: formatRound в Shiny, когда столбцы меняют положение из-за выбора пользователя - PullRequest
0 голосов
/ 14 октября 2018

Я делаю блестящее приложение (https://joshmyers.shinyapps.io/WAINorms/). На третьей вкладке «Нормативные данные» отображаются данные, основанные на паре пользовательских вводов. Мой код вывода для таблицы:

output$table = renderDataTable({
datatable(norms.df(), options = list(
lengthMenu = list(c(50, 100, 200, -1), c('50', '100', '200', 'All')), 
pageLength = 100), rownames = FALSE, class = 'white-space: nowrap stripe hover') 
%>% formatRound(columns = -c(1:2), digits =  2)
})

Функция formatRound округляет все столбцы, кроме первых двух-двух десятичных разрядов. Проблема в том, что она также округляет столбец «Percentile», который мне не нужен.

Проблемазаключается в том, что он меняет местами в зависимости от выбора «Этническая особенность» - если «Нет», процентиль является 3-м столбцом, но если «Да», он становится 4-м столбцом, так как вставляется другой столбец «Этническая принадлежность».

Как можно округлить все столбцы до 2 десятичных знаков, кроме "Мера", "Возраст", "Процент" и "Этнос"?

1 Ответ

0 голосов
/ 15 октября 2018

Это было не совсем то, что я хотел, но я могу жить с этим.Вы можете связать formatRound функции вместе (https://rstudio.github.io/DT/functions.html), чтобы я мог округлить столбец «Percentile» до одного десятичного знака, что было бы приемлемо. Однако я решил вместо этого использовать formatSignif.

datatable(norms.df()) %>% 
formatSignif("Percentile", 3) %>% 
formatRound( -c(1:2), 2) 
...