write.csv 和 read.csv 在 Shiny App 中分享于 shinyapps.io

write.csv and read.csv in Shiny App shared on shinyapps.io

我创建了一个应用程序,我想在 shinypps.io

上分享

在我的代码中,我使用函数加载、write.csv 和 read.csv,它们读取文件并将文件写入名为输出和数据的文件夹。我的应用程序在本地 运行 时运行良好,但在部署时出现错误:

无法打开压缩文件 'data\Catchments.RData',可能的原因 'No such file or directory'

我尝试使用一个名为 www 的文件夹来存储这些,但仍然有错误消息。在 shinyapps.io 上分享应用时有没有办法使用这些功能?

无法使用 shinyapp.io 中的目录。一个简单的解决方法是在应用程序中放置一个上传按钮,执行您需要的所有操作,最后再次使用下载按钮下载结果。从远程服务器获取数据也是一个不错的选择。

如图所示Article

“本地与远程存储

在深入研究不同的存储方法之前,需要了解的一个重要区别是本地存储与远程存储。

本地存储意味着将文件保存在与运行 Shiny 应用程序相同的机器上。 write.csv()、write.table() 和 saveRDS() 等函数实现本地存储,因为它们会在 运行 应用程序的机器上保存文件。本地存储通常比远程存储快,但只有在您始终可以访问保存文件的机器时才应使用它。

远程存储意味着将数据保存在另一台服务器上,通常是可靠的托管服务器,例如 Dropbox、Amazon 或托管数据库。使用托管远程存储解决方案的一大优势是它们更可靠,通常更值得信赖,可以让您的数据保持活力和不损坏。

在浏览下面的不同存储类型选项时,请记住,如果您的 Shiny 应用程序托管在 shinyapps.io、您暂时必须使用远程存储方法。同时,只有在托管自己的 Shiny Server 时,才可以选择使用本地存储。如果你想托管自己的服务器,这里有一个指南,详细描述了如何设置你自己的 Shiny Server。"