Реактивная загрузка в R Shiny

Учитывая набор данных

a<-1
b<-2
c<-42
d<- a+b*c

save(file="data.RData",list=ls())

Я хочу иметь возможность загрузить их один раз с реактивной нагрузкой и иметь возможность использовать их столько раз, сколько захочу.

Мой код выглядит так

ui_test <- shinyUI({

fluidPage(fluidRow(
fileInput(inputId = "generated_data",label=NULL,buttonLabel= h4(strong("Load your data here")),accept = ".RData",placeholder = NULL),
    hr(),
    verbatimTextOutput("test1"),
    verbatimTextOutput("test2"),
    verbatimTextOutput("test3")
  ))  
})

server_test <- shinyServer(function(input,output,session){
  observeEvent(input$generated_data,{
    load(input$generated_data$datapath)
  })

  output$test1<-renderText({if (!is.null(input$generated_data)) a+b else "No input"})
  output$test2<-renderText({if (!is.null(input$generated_data)) c else "No input"})
  output$test3<-renderText({if (!is.null(input$generated_data)) d else "No input"})
})

shinyApp(ui=ui_test,server=server_test)

но это не работает, когда я загружаю файл RData

Предупреждение: ошибка в renderText: объект 'b' не найден


person K.Hua    schedule 22.06.2017    source источник
comment
Привет, @K.Hua, попробовал твой код после удаления buttonLabel, проблем не возникло   -  person parth    schedule 22.06.2017