2016-11-08 86 views
1

我正試圖顯示上載的數據文件中的行數。我得到的輸出雖然是'data1'。有人可以協助獲取數據文件中的行數嗎?使用R顯示上載數據文件中的行數Shiny

ui.R

library(shiny) 

ui = fluidPage(
sidebarPanel(
fileInput('file1', 'Choose file to upload',accept = c('text/csv','text/comma-separated-values','text/tab-separated-values','text/plain','.csv','.tsv')), 
checkboxInput('header', 'Header', TRUE), 
radioButtons('sep', 'Separator',c(Comma=',',Semicolon=';',Tab='\t'),'Comma'), 
radioButtons('quote', 'Quote',c(None='','Double Quote'='"','Single Quote'="'"),'Double Quote'), 
actionButton("Load", "Load the File"),width = 3), 

mainPanel(verbatimTextOutput("my_output_data")) 
) 

server.R

server = function(input, output) { 

data1 <- reactive({ 
if(input$Load == 0){return()} 
inFile <- input$file1 
if (is.null(inFile)){return(NULL)} 

isolate({ 
    input$Load 
    my_data <- read.csv(inFile$datapath, header = input$header,sep = input$sep, quote = input$quote,stringsAsFactors =FALSE) 
    my_data_size <- nrow(my_data) 
}) 
my_data_size 
}) 

output$my_output_data <- renderPrint({data1}) 

} 

回答

1

所以數據1實際上是一種反應性功能。因此,在renderPrint({})中,更改爲:

output$my_output_data <- renderPrint({data1()}) 

使用圓括號運行函數並獲取輸出。沒有括號,你只是得到了函數對象本身的直覺,而不是輸出。

希望這會有所幫助。我用一個樣本數據集在我的最後測試了它,它工作正常。

相關問題