簡體   English   中英

閃亮的R:如何使用gvisTable反應地對數據框進行排序

[英]shiny R: how to sort dataframe reactively using gvisTable

我正在構建一個Web應用程序,該應用程序將從用戶那里獲取輸入值,並使用它創建一個數據框,最后使用gvisTable對其進行顯示。 但是,我正在努力按分數列對數據幀進行動態排序。

這是server.R文件中的文件:

values<- reactiveValues() 
  values$df<- data.frame()

  observeEvent(input$click_counter, {
    name<- input$name
    gender<- input$gender
    college<- input$college
    team<- input$team
    score<- as.numeric(input$score)
    rank<- 0

    new_row<- data.frame(rank,name,college,gender,team,score)

    values$df<- rbind(values$df, new_row)
    values$df<- values$df[order(values$df$score,decreasing=TRUE),]
    values$df$rank<- 1:nrow(values$df)
  })

dff1 <- data.frame()
  output$summa2 <- renderGvis({
    for (team_name in unique(values$df$team)){
      rank <- 0
      team <- team_name
      score <- format(mean(values$df[values$df$team==team_name,]$score), digits=4)

      new_row<- data.frame(rank, team, score)

      dff1 <<- rbind(dff1, new_row)
      dff1 <<- dff1[order(dff1$score,decreasing=FALSE),]
      dff1$rank <<- 1:nrow(dff1)
    }
    return(gvisTable(dff1))
  })

您的代碼不可復制,但是我猜您需要在gvisTable添加sortColumn選項。

像這樣:

return(gvisTable(dff1, options=list(sortColumn='COLUMN_NUMBER'))

只需將“ COLUMN_NUMBER”替換為所需的列即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM