Я хотел бы написать приложение Shiny, которое читает файл .csv, присваивает его содержимое фрейму данных, а затем заполняет список «select» selectInput или varselectInput именами столбцов / переменных фрейма данных. Я знаю, как прочитать файл и вывести его в таблицу, но я изо всех сил стараюсь сделать переменные доступными для выбора пользователя.
Ниже представлены следующие значения:
library(shiny)
library(DT)
#>
#> Attaching package: 'DT'
#> The following objects are masked from 'package:shiny':
#>
#> dataTableOutput, renderDataTable
ui <- fluidPage(
fluidRow(
column(3,
fileInput("file","Upload the file")
),
column(9, DT::dataTableOutput("tb"))
),
fluidRow(
column(6,
# How to populate this dropdown list with the data frame variables???
selectInput("var", "Select variables", choices = NULL, multiple = TRUE)
)
)
)
server <- function(input, output, session) {
output$tb <- DT::renderDataTable({
req(input$file)
df <- read.csv(input$file$datapath,
header = TRUE,
sep = ",")
})
}
# Run the application
shinyApp(ui = ui, server = server)
#> PhantomJS not found. You can install it with webshot::install_phantomjs(). If it is installed, please make sure the phantomjs executable can be found via the PATH variable.
Большое спасибо за вашу помощь!