title: How to import Excel sheet into shiny and update with a button
body: <p>I have a shiny app that allows the user to upload an Excel sheet and then displays it in a datatable it. I then want to perform a function on the table and display the new data.</p>
  
  <p>As far as I understand the process should be 1. Allow the data to be imported with the <code>fileInput</code> on the ui.R side</p>
  
  <pre><code>sidebarMenu(
          menuItem("Dashboard", tabName = "dashboard", icon = icon("dashboard")),
          fileInput("csvs",
                    label="Upload CSVs here",
                    multiple = FALSE)
  </code></pre>
  
  <p><strong>2. Store the data as a reactive value</strong></p>
  
  <pre><code>  data &lt;- reactive({
      inFile &lt;- input$csvs
      if (is.null(inFile)) { return(NULL) }    
      dataFile &lt;- read_excel(inFile$datapath,sheet=1)
      dataFile&lt;-data.frame(EndoPaste(dataFile)[1],stringsAsFactors=FALSE)
    })
  
  RV &lt;- reactiveValues(data = data.frame())
  </code></pre>
  
  <p><strong>3. Show the data in a datatable</strong></p>
  
  <pre><code>  output$endotable = DT::renderDT({
      RV$data&lt;-data()
    },options = list(scrollX = TRUE))
  </code></pre>
  
  <p><strong>4. Allow the user to run a function against the data</strong></p>
  
  <pre><code>  observeEvent(input$textPrep,{
  
  #My custom function
      mywordsOGD&lt;-input$caption
      mywordsOGD&lt;-unlist(strsplit(mywordsOGD,","))
      RV$data&lt;-textPrep(RV$data[,1],mywordsOGD,NegEx="TRUE")
  
    },ignoreInit = TRUE)
  </code></pre>
  
  <p><strong>5. Display the new data in the dataTable</strong></p>
  
  <p>When I run the observe event with browser() RV$data is updated properly, the only issue is that the datatable doesn't show the new values.</p>
  
  <p>I'm sure it is something obvious; how can I display the new values in the datatable?</p>