R/Shiny:使用上传文件中的 Headers 动态填充复选框组
R/Shiny: Populate CheckBox Group Dynamically Using Headers From Uploaded File
我正在尝试使用 R Shiny 构建一个页面,该页面具有:
用于上传 CSV 文件的文件小部件
复选框组组件
我想按如下方式使用它们:
- 上传有效的 CSV 文件后,填充 CheckBox 组,其复选框都是 CSV 文件中的 headers,默认情况下全部选中
到目前为止,我已经尝试了各种形式的 observe() 和 observeEvent(),但都没有成功地接近它。如果您有任何建议,那就太好了。
你可以试试checkboxGroupInput
。
library(shiny)
ui <- fluidPage(
fileInput('file', 'Upload csv file'),
uiOutput('dropdown')
)
server <- function(input, output) {
data <- reactive({
req(input$file)
read.csv(input$file$datapath)
})
output$dropdown <- renderUI({
req(data())
checkboxGroupInput('cols', 'Select Column', names(data()),
names(data()), inline = TRUE)
})
}
shinyApp(ui, server)
如果要竖排可以设置inline = FALSE
我正在尝试使用 R Shiny 构建一个页面,该页面具有:
用于上传 CSV 文件的文件小部件
复选框组组件
我想按如下方式使用它们:
- 上传有效的 CSV 文件后,填充 CheckBox 组,其复选框都是 CSV 文件中的 headers,默认情况下全部选中
到目前为止,我已经尝试了各种形式的 observe() 和 observeEvent(),但都没有成功地接近它。如果您有任何建议,那就太好了。
你可以试试checkboxGroupInput
。
library(shiny)
ui <- fluidPage(
fileInput('file', 'Upload csv file'),
uiOutput('dropdown')
)
server <- function(input, output) {
data <- reactive({
req(input$file)
read.csv(input$file$datapath)
})
output$dropdown <- renderUI({
req(data())
checkboxGroupInput('cols', 'Select Column', names(data()),
names(data()), inline = TRUE)
})
}
shinyApp(ui, server)
如果要竖排可以设置inline = FALSE