2015-04-16 57 views
0

我目前正在編寫一個閃亮的應用程序,該應用程序導入數據集並顯示操作版本。爲了處理閃亮的方法,我目前正在處理顯示導入數據集的簡化版本。我目前導入的數據集分配給一個反應性值,然後使用如下所述渲染表: -從反應數據集中調用閃亮文件名中的文件名

shinyServer(function(input, output) { 

DATA<-reactive({ 
    input$filein 
}) 



output$Dataset <- renderTable({ 
    DATA() 
}) 


}) 

接口然後產生一個表具有以下的列: - 名稱,大小,類型,數據路徑。

我想到的是調用數據路徑變量,並使用read.csv在renderTable函數中調用它。我試過使用: -

DATA()$datapath 

但是,這似乎沒有產生任何結果。在Shiny中有沒有其他的方法來提取這些數據?我打算使用向量索引,因爲您會使用常規R代碼,但是我不確定這是否可以在Shiny中使用。

+0

你想顯示文件信息或文件中的數據?或兩者? – cdeterman

+0

作爲最終產品,我希望在文件中顯示數據。不過,我目前對使用文件信息感興趣。如果有更快的方法做到這一點,那麼我會樂於考慮這一點。 –

回答

0

以下是當前工作目錄中文件的示例。我使用的示例文件是一個最小的csv文件(見底部)。但請注意,這實際上僅限於工作目錄中的文件。如果您想要加載其他文件,則需要另外指定路徑(可能位於selectInput)。

library(shiny) 
library(tools) 

runApp(
    list(
     ui = pageWithSidebar(
      headerPanel("File Info Test"), 
      sidebarPanel(
       p("Demo Page."), 
       selectInput("filein", "Choose File", choices=c("test.csv")) 
      ), 
      mainPanel(
       tableOutput("myTableInfo"), 
       tableOutput("myTable") 
      ) 
     ), 
     server = function(input, output){ 

      mydata <- reactive({ 
       read.csv(input$filein) 
      }) 

      file_info <- reactive({ 

       validate(
        need(!is.null(input$filein), "please select file" 
         ) 
        ) 

       name <- input$filein 
       size <- file.info(input$filein)[['size']] 
       type <- file_ext(input$filein) 
       datapath <- file_path_as_absolute(input$filein) 
       cbind(name, size, type, datapath) 
      }) 

      output$myTableInfo <- renderTable({ 
       file_info() 
      }) 

      output$myTable <- renderTable({ 
       mydata() 
      }) 

     } 
    ) 
) 

test.csv

X1,X2,X3 
1,2,3 
4,5,6 
相關問題