gpt4 book ai didi

r - 在 Shiny 中获取多个复选框值

转载 作者:行者123 更新时间:2023-12-04 11:08:31 24 4
gpt4 key购买 nike

我在侧面板中有一系列复选框,在 sidebarPanel 中定义如下:

sliderInput("days", 
"Days to monitor:",
min = 1,
max = 50,
value = 5),
checkboxInput("display_CMC", "Carolinas Medical Center", TRUE),
checkboxInput("display_MariaParham", "Maria Parham", TRUE),
checkboxInput("display_WakeMed", "Wake Med", TRUE)

我想以编程方式将这些结果转换为字符向量(例如,如果我有一个名为“ display_”的 checkboxInput,我希望它自动解析结果)。为此,我尝试了:
displayIdx <- grep( "display_", names(input) )
facilityCode_keep <- names(input)[ displayIdx ][ input[ displayIdx ] ]

不幸的是,这导致:
Error: Single-bracket indexing of reactivevalues object is not allowed.

两个问题:
  • 我如何转换一系列checkboxInput s 成字符向量?
  • 不允许使用单括号索引是怎么回事。我可以理解我是否试图分配给 input , 但我不是。
  • 最佳答案

    如何将一系列 checkboxInputs 转换为字符向量?

    您可以使用双括号索引。但在这种情况下,您可能会考虑使用 checkboxGroupInput函数,它返回所选值的字符向量。

    为什么不使用单括号索引?

    单括号索引是子集,而双括号索引是元素检索(或类似的东西)。输入对象更像是映射/哈希/字典/环境而不是命名向量,因此子集化并没有真正意义。 (同样,你不能在 R 的环境对象上单括号索引,你只能双括号索引。)

    关于r - 在 Shiny 中获取多个复选框值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16654697/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com