我知道我必须使用fileInput函数,但是我希望用户只能上载一个或两个或三个或几个文件,然后对这些文件执行基础代码。 然后,我希望用户能够下载结果文件,但是我认为我知道该怎么做。 预先感谢您提供任何答案。
答案 0 :(得分:1)
我确实相信this应该将您带向正确的方向,对我来说就像是一种魅力。基本逻辑是启用multiple
中的fileInput
标志并遍历服务器功能中的文件列表。
library(shiny)
library(data.table)
ui <- fluidPage(
titlePanel("Multiple file uploads"),
sidebarLayout(
sidebarPanel(
fileInput("csvs",
label="Upload CSVs here",
multiple = TRUE)
),
mainPanel(
textOutput("count")
)
)
)
server <- function(input, output) {
mycsvs<-reactive({
rbindlist(lapply(input$csvs$datapath, fread),
use.names = TRUE, fill = TRUE)
})
output$count <- renderText(nrow(mycsvs()))
}
shinyApp(ui = ui, server = server)