У меня возникли проблемы с DT :: rednerDataTable. Когда мой datatable создается, у меня есть три (из 10) столбцов чисел, которые не сортируются. Это то, что это выглядит как сортируется: R shiny Datatable column не сортировка как числовая
Вот мой код:
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardBody(
tabItems((tabName = "ResultsTable",
fluidPage(column(11, DT::dataTableOutput("table",width = "100%"),offset = 0))))
shinyServer(function(input, output, session) {
output$table <- DT::renderDataTable(DT::datatable({
data <- rv$data
if (input$sour != "All") {
data <- data[data[,1] == input$sour,]
}else{data}
if (input$sour1 != "All") {
data <-data[data[,2] == input$sour1,]
}else{data}
if (input$tran2 != "All") {
data <-data[data[,3] == input$tran2,]
}else{data}
}))
})
переменные данные представляет собой data.frame и числовые столбцы уже отсортированы, но, как я нажимаю вверх и вниз стрелки рядом с именем столбца в таблице (как показано ниже) сортировка путается.
Буду признателен за любую помощь!
Thank you
Попробуйте сделать его полным примером. Но вам, вероятно, просто нужно преобразовать типы столбцов в числовые с помощью 'as.numeric (col)' или - если они были фактором - ('as.numeric (as.character (col))' –
Я думал, что сделал это уже проблема, но это была проблема.Я пытался изменить ее, пока она была матрицей.Я переключил его на фрейм данных и смог иметь часть столбцов как числовые. Спасибо @ Mike Wise – Tracy
Это на самом деле возможно, что это помогло бы кому-то в будущем, поэтому я отправлю его в качестве ответа, если вы его примете. Это хорошо? У вас тоже есть репутация. –