В Shiny мы загружаем данные на сервер, завернутые в реактивные скобки.Файл читается через read_csv ().Теперь, когда мы хотим использовать этот фрейм данных для разных задач, мы вызываем эту реактивную функцию, которая читает фрейм данных.Это кажется неэффективным.Есть ли способ просто прочитать кадр данных и использовать его во всем приложении?
## Upload Datafrma
uploadDataframe <- reactive({
if (is.null(input$uploadData_uploadFile)) return (NULL)
df <- read_csv(input$uploadData_uploadFile$datapath)
return(df)
})
## Display Table
output$uploadData_df <- renderDataTable({
uploadDataframe()
})
## Show Summary of Table
output$uploadData_Summary <- renderText({
summary(uploadDataframe())
})
## Plot
output$uploadData_Summary <- renderText({
ggplot(uploadDataframe()) + ...
})
В приведенном выше примере мы вызываем uploadDataFrame()
реактивную функцию для каждой задачи, которую мы хотим выполнить, которая, в свою очередь, снова и снова считывает данные из файловой системы.Если набор данных большой, уйдет много времени на его чтение снова и снова.Есть ли способ, где мы можем просто прочитать данные один раз и использовать их везде?Данные должны быть изолированы для каждого пользователя.