我想排序格式化爲美元(因此是一個字符)的DataTable列。我已經使用scales::dollar()
進行格式化。這將字段轉換爲導致排序問題的字符(例如,"$8" > "$10"
)。打印就像一個字符,但像Shiny和DataTable中的數字排序
如何將字段排序爲數字?或者,我可以將字段保留爲數字,只需使用美元格式打印?
app.R(需要閃亮0.10.2)
server <- function(input, output) {
output$foo_table <- renderDataTable({
x <- seq(8000, 12000, by = 1000)
x <- scales::dollar(x)
d <- data.frame(x, stringsAsFactors = FALSE)
d
})
}
ui <- shinyUI(fluidPage(
mainPanel(dataTableOutput("foo_table"))
)
)
shinyApp(ui = ui, server = server)
'gtools :: mixedsort()'看起來非常方便。但是這並不能解決讓Shiny中的dataTable正確排序的問題。 – davechilders 2014-10-27 02:04:38
對不起。我不是一個足夠有經驗的Shiny用戶來解析這個聲明 – 2014-10-27 02:53:33