【问题标题】:R Shiny Filter with CheckboxInput带有 CheckboxInput 的 R 闪亮过滤器
【发布时间】:2020-10-28 18:35:07
【问题描述】:

我无法根据 CheckBoxInput 在闪亮的应用程序中过滤我的数据集。

我猜问题是 CheckboxInput 的格式错误。

在这里,我还有一个示例代码:

x <- as.data.frame(matrix(data = 1:20,ncol=2))
colnames(x) <- c("Test1","Test2")

ui <- fluidPage(
checkboxGroupInput("icons", "Choose icons:", choices = 1:10),
textOutput("test"))

server <- function(input, output, session) {
output$test <- renderText({
  req(input$icons)
  tmp_input <- as.numeric(as.vector(input$icons))
  tmp <- x %>%
    dplyr::filter(Test1 %in% tmp_input)
  return(tmp)
})
}  
shinyApp(ui, server)

错误信息是:参数1(类型'list')不能被'cat'处理

非常感谢您的帮助!

【问题讨论】:

    标签: r shiny


    【解决方案1】:

    tmp 是一个 data.frame(实际上也是一个列表)。您返回它以使其由使用catrenderText 呈现。但是cat 需要原子向量并且无法处理列表。试试renderPrintverbatimTextOutput的组合:

    library(shiny)
    library(dplyr)
    x <- as.data.frame(matrix(data = 1:20,ncol=2))
    colnames(x) <- c("Test1","Test2")
    
    ui <- fluidPage(
      checkboxGroupInput("icons", "Choose icons:", choices = 1:10),
      verbatimTextOutput("test"))
    
    server <- function(input, output, session) {
      output$test <- renderPrint({
        req(input$icons)
        tmp_input <- as.numeric(as.vector(input$icons))
        tmp <- x %>%
          dplyr::filter(Test1 %in% tmp_input)
        return(tmp)
      })
    }  
    shinyApp(ui, server)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-09
      • 1970-01-01
      • 2020-07-28
      • 1970-01-01
      • 1970-01-01
      • 2018-04-05
      相关资源
      最近更新 更多