如何从闪亮的 selectInput 中删除“”?
How to remove "" from shiny selectInput?
我想以布尔方式直接使用一些selectInput
。有可能吗?
看看我的最小示例:
ui <- fluidPage(
selectInput("in", "some input", choices = c("0"=F, "1"=T))
)
server <- function(input, output, session) {
test_data <- read.csv("testfile",
header= input$in,
sep= ";")
}
删除引号的一般技巧(如 here 所述)不会奏效。我还试图强制 R 将输入的输出视为合乎逻辑的(通过 as.logical
),并且我尝试了一些简单的 print(..., quote=F)
。没有任何效果...
in
是 R 中的保留字。您仍然可以使用反引号引用输入名称以避免错误。此外,input[['in']]
也可以。最后我们可以使用 as.logical
将字符串转换为布尔值。
应用程序:
注意:在 运行 应用程序之前替换 'PATHTOFILE'。
library(shiny)
ui <- fluidPage(
selectInput("in", "some input", choices = c("0"=F, "1"=T))
)
server <- function(input, output, session) {
test_data <- reactive({
read.csv("PATHTOFILE",
header= as.logical(input$`in`),
sep= ";")})
observe({
print(input$`in`)
print(head(test_data()))
})
}
shinyApp(ui, server)
我想以布尔方式直接使用一些selectInput
。有可能吗?
看看我的最小示例:
ui <- fluidPage(
selectInput("in", "some input", choices = c("0"=F, "1"=T))
)
server <- function(input, output, session) {
test_data <- read.csv("testfile",
header= input$in,
sep= ";")
}
删除引号的一般技巧(如 here 所述)不会奏效。我还试图强制 R 将输入的输出视为合乎逻辑的(通过 as.logical
),并且我尝试了一些简单的 print(..., quote=F)
。没有任何效果...
in
是 R 中的保留字。您仍然可以使用反引号引用输入名称以避免错误。此外,input[['in']]
也可以。最后我们可以使用 as.logical
将字符串转换为布尔值。
应用程序:
注意:在 运行 应用程序之前替换 'PATHTOFILE'。
library(shiny)
ui <- fluidPage(
selectInput("in", "some input", choices = c("0"=F, "1"=T))
)
server <- function(input, output, session) {
test_data <- reactive({
read.csv("PATHTOFILE",
header= as.logical(input$`in`),
sep= ";")})
observe({
print(input$`in`)
print(head(test_data()))
})
}
shinyApp(ui, server)