我正在尝试查看是否有一种方法可以按列值对数据透视表进行排序。
在下面的示例程序和输出代码段中,是否可以按“ cyl”,“ disp”,“ hp”或“ mpg”列对表格进行排序?
library(shiny)
library(dplyr)
library(rpivotTable)
ui <- fluidPage(
rpivotTableOutput(outputId = "rpv")
)
server <- function(input, output) {
sorter <- paste0("
function(attr) {
var sortAs = $.pivotUtilities.sortAs;
if (attr == 'x') { return sortAs(['mpg','disp','cyl','hp']); }
}")
observe({
output$rpv <- renderRpivotTable({rpivotTable(mtcars %>% gather(x, y, 1:4), rows = c('vs','gear'), cols = c('x'), vals = 'y', sorters = sorter, aggregatorName = "Sum", subtotals = TRUE)})
})
}
shinyApp(ui = ui, server = server)
作为示例输出,按“ mpg”列排序将显示表格,以使“ mpg”列值将为(假定为asc): 299.10、42.00、76.50、180.60、343.80、30.40、61.00、252.40 ,642.90
我认为可能是
或