当我在Shiny中上传30 MB的csv文件时,花了20-25秒才能看到“上传完成”。
上传栏几乎立即完成。 “上传完成”还需要20秒才能显示。
根据R Shiny, fileInput displays "Upload Completed" a few seconds before it is actually done,上传栏测量将文件上传到temp目录的时间。不是时候将其读入内存。
因此,似乎需要20秒才能将我的数据读入内存。知道如何加快速度吗?
我的代码很简单:
server.R
options(shiny.maxRequestSize = 50*1024^2)
function(input, output, session) {
rawdata <- shiny::eventReactive (input$inFile, {
rdata <- capture.output(data.table::fread(input$inFile$datapath, header=input$header, sep=",", data.table = F, verbose = T))
})
}
ui.R
ui <- fluidPage(
titlePanel("title panel"),
sidebarLayout(
sidebarPanel("sidebar panel",
shiny::fileInput(inputId = "inFile", "Choose a CSV File",
accept = c(
"text/csv",
"text/comma-separated-values,text/plain",
".csv"
)
),
shiny::checkboxInput("header", "Header", TRUE)),
mainPanel("main panel")
)
)