«Загрузка завершена» (fileInput) занимает много времени в Shiny - PullRequest
1 голос
/ 13 мая 2019

Потребовалось 20-25 секунд, чтобы увидеть «Загрузка завершена», когда я загружаю CSV-файл размером 30 МБ в Shiny.

Панель загрузки завершается почти мгновенно.«Загрузка завершена» занимает еще 20 секунд.

В соответствии с R Блестящий, fileInput отображает «Загрузка завершена» за несколько секунд до того, как это действительно сделано , панель загрузки измеряетвремя загрузить файл во временный каталог.Не время для чтения в память.

Таким образом, похоже, что для считывания моих данных в память требуется 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")
  )
)
...