¿Cómo generar dataTableOutput dinámicamente leyendo los archivos .csv en un bucle en R shiny?

Tengo una función que genera marcos de datos "n" y los guarda en una ubicación como archivos csv y la función devuelve el nombre del archivo de los CSV guardados.

Deseo tomar esos archivos csv, leerlos usandoread.csv() y luego mostrarlo en la interfaz de usuario usando renderUI y renderDataTable ()

Si bien el siguiente código no tiene errores de sintaxis, peronada se muestra en la pantalla.

Sugiera un método apropiado mediante el cual las tablas generadas en una parte del servidor. R se puedan usar en la salida y mostrar esas tablas de datos en la interfaz de usuario.

El código para la función está abajo:

Función

GenerateData <- function(){
   #********************************************************************
   # some sample data (originally, my data comes from an external souce)
   #--------------------------------------------------------------------
   a <- 1:10
   b<- 21:30
   c<-41:50
   sampleDat1 <- data.frame(a,b,c)
   sampleDat2<- data.frame(c,a,b,a)
   NumOfDataFrames <- 2
   #--------------------------------------------------------------------
   FilePath <- "D:/FolDerName/"
   FullPath<-WriteStatement <- NULL
   for(i in 1:NumOfDataFrames){

      FullPath[i]<-paste0(FilePath,"sampleDat",i,".csv")
      WriteStatement[i]<-paste0("write.csv(sampleDat",i,",file = '",FullPath[i],"')")
      eval(parse(text=WriteStatement[i]))
   }
   return(FullPath)

}

El UI.r

library(shiny)
shinyUI(

   fluidPage(

      # Application title

      navbarPage("Sample Data Display",
                 tabPanel("Data",
                          sidebarLayout(
                             sidebarPanel(
                                titlePanel("Sample"),
                                numericInput("sample1",label = "Some Label",value = 20),
                                numericInput("sample2",label = "Some Other Label",value = 20)
                             ),
                             mainPanel(
                                uiOutput("result")

                             )
                          )
                 )
      )
   )
)

El servidor. R

library(shiny)

GenerateData <- function(){
   #********************************************************************
   # already mentioned above, please copy the contents to server.R
   #--------------------------------------------------------------------


}
shinyServer(function(input, output,session) {
   dataSrc <- reactive({
      paths <- GenerateData()
      return(paths)
   })
   output$result <- renderUI({
      dataTab1<-NULL
      MyFilePath <- dataSrc()
      for (i in 1:length(MyFilePath)){
         dataTab1 <- read.csv(MyFilePath[i])
         # print(dataTab1)
         renderDataTable(dataTab1)
         dataTab1<-NULL

      }

   })
}
)

Respuestas a la pregunta(1)

Su respuesta a la pregunta