【问题标题】:Using checkboxGroupInput choices with NA使用带有 NA 的 checkboxGroupInput 选项
【发布时间】:2017-03-08 06:25:25
【问题描述】:

我不知道如何在 checkboxGroupInput 中使用 NA。在下面的示例中,例如,我希望能够选择所有 NA 值和所有“M”值。但我无法选择 NA 值。

过滤适用于 Shiny 应用程序之外的数据框,所以我想知道它是否与 input$b_select 有关。

服务器.R

library(shiny)
library(tidyverse)

a = 1:10
b = c('M', 'F', NA, NA, NA, 'F', NA, 'M', 'F', NA)

test_data <- tibble(a, b)

shinyServer(function(input, output) {

  output$total <- renderText({  

    data <- test_data %>%
      filter(b %in% input$b_select)

    paste("Total:", nrow(data), sep = ' ')   
  })
})

ui.R

library(shiny)

shinyUI(fluidPage(

  titlePanel("Example"),
    sidebarLayout(sidebarPanel(

      checkboxGroupInput("b_select", 
                         label = "B:", 
                         choices = c('M', 'F', NA),
                         selected = c('M', 'F', NA)
      )
    ),
    mainPanel(textOutput("total"))
  )
))

谢谢!

【问题讨论】:

    标签: r shiny


    【解决方案1】:

    checkboxGroupInput 中选择NA 实际上返回空字符串""

    您可以使用is.na 来修复过滤器:

    data <- test_data %>%
      filter( b %in% input$b_select | ( is.na(b) & "" %in% input$b_select ) )
    

    【讨论】:

      猜你喜欢
      • 2019-11-25
      • 2017-12-11
      • 2020-09-11
      • 1970-01-01
      • 2021-06-12
      • 1970-01-01
      • 1970-01-01
      • 2019-07-31
      • 1970-01-01
      相关资源
      最近更新 更多