SHINY 中的下载按钮出错

Error with the download button in SHINY

当我使用它来检索我的报告时,我的下载按钮显示错误。按钮的输出 ID 是 downloadData。似乎是什么错误?

output$downloadData <- downloadHandler(
filename = function() {
  paste('Final Report', '.csv', sep='')
  },
content = function(file){
       write.csv(csv_write,row.names=FALSE, na="")
})

参见the documentation

content = function(file) {
  write.csv(data, file)
}

所以你还必须将文件参数传递给write.csv函数。假设你要写入的数据叫做csv_write,你应该这样做:

write.csv(csv_write, file, row.names=FALSE, na="")

工作示例

library(shiny)

csv_write = data.frame(a=c(1,2,3),b=c(1,2,3))

server <- shinyServer(function(input, output, session) {

  output$downloadData <- downloadHandler(
    filename = function() {
      paste('Final Report', '.csv', sep='')
    },
    content = function(file){
      write.csv(csv_write,file,row.names=FALSE, na="")
    })


})

ui <-shinyUI(fluidPage(

      downloadButton('downloadData', 'Download data')

))

shinyApp(ui,server)

请注意,csv_write 是一个反应式或反应式值,您应该调用 csv_write() 而不是 csv_write。

假设 csv_write 是您要下载的数据集,以下代码应该适用于您:

output$downloadData <- downloadHandler(
        "Final_Report.csv", content = function(file) {
         write.csv(csv_write, file, row.names=FALSE, na="")
        }
      )

首先你遇到了什么样的错误?