r - 仅当非空值时,如何在输入和过滤数据中具有默认空值?
问题描述
期望的结果:我试图在默认情况下显示/绘制所有数据,默认情况下在 selectInut 中使用NULL 值,并且仅当在应用程序中选择了一些非空输入值时才过滤数据。selectInput
shiny
我在 selectInput() SO post中遇到了Force no default selection以将NULL 值添加到 中SelectInput
,到目前为止,它仅对我部分起作用。
问题:它仅在我选择一些非 nulll 值时才有效,否则会产生空白输出(似乎if else 失败可能是由于 reactive()函数,但我不确定为什么会发生这种情况)。
下面的代码:
用户界面
selectInput(inputId = "vaccine_center_state_select",
label = "Select State to narrow your search",
choices = c("",unique(vacc_centers$state))
,selected = NULL
,multiple = FALSE
),
服务器:
filtered_vaccine_centers <- reactive({
req(input$vaccine_center_state_select)
if(!is.null(input$vaccine_center_state_select))
{
filtered_vaccine_centers <- vacc_centers %>%
filter(state == input$vaccine_center_state_select)
}
else filtered_vaccine_centers <- vacc_centers
}) %>%
bindCache(input$vaccine_center_state_select)
解决方案
当我进行一些更改时它起作用了..不确定哪一个是因素
- 而不是
null
使用其他文本,即“未选择状态”并对其应用条件: - 将数据框名称更改
filtered_vaccine_center
为filtered_vaccine
用户界面
selectInput(inputId = "vaccine_center_state_select",
label = "Select State to narrow your search",
choices = c("No State selected",unique(vacc_centers$state))
,selected = "No State selected"
,multiple = FALSE
),
服务器:
filtered_vaccine_centers <- reactive({
req(input$vaccine_center_state_select)
if(input$vaccine_center_state_select != "No State selected")
{
filtered_vaccine <- vacc_centers %>%
filter(state == input$vaccine_center_state_select)
}
else filtered_vaccine <- vacc_centers
}) %>%
bindCache(input$vaccine_center_state_select)
不使用国家地图坐标的纬度、长轴上的疫苗接种中心点
输出
推荐阅读
- android - 知道当设备设置为法语时我的 Android 应用程序为何/在何处请求访问照片吗?
- java - 需要从字符串源打开意图
- c# - 从路径中获取所有嵌套文件夹名称(无路径)
- office-js - office.js web 添加对第三方 web-app 的身份验证
- r - R:如何根据单列中的唯一值组合来自多列的重复行并通过|合并这些唯一值?
- arrays - 数组 Bash/Shell 中的分隔符
- java - 计数器和 for 循环的问题。协助赞赏
- java - 为管理员而不是 Firebase 用户显示按钮是否正确?
- sql - 这怎么能翻译成postgresql?
- r - R - 将一列分成两个相关的