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="")
})
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="")
}
)
首先你遇到了什么样的错误?
当我使用它来检索我的报告时,我的下载按钮显示错误。按钮的输出 ID 是 downloadData。似乎是什么错误?
output$downloadData <- downloadHandler(
filename = function() {
paste('Final Report', '.csv', sep='')
},
content = function(file){
write.csv(csv_write,row.names=FALSE, na="")
})
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="")
}
)
首先你遇到了什么样的错误?