如何将外部数据集上运行的应用程序发布到shinyapps.io?

时间:2017-02-17 01:22:13

标签: r shiny

我创建了一个函数predictAll(),它将一个英语短语作为输入并返回下一个最可能的单词。我创建了一个闪亮的应用程序,引用该功能并在本地运行良好。在应用程序中,用户输入短语,应用程序返回下一个推荐的单词。

我的问题是,如何将应用程序发布到ShinyApps? predictAll函数基于一个大型文本文档,存储在本地,并且运行生成它的程序大约需要10分钟。该功能是否可以在ShinyApps上运行而无需上传原始数据集及其附带的所有代码?

1 个答案:

答案 0 :(得分:1)

以下是两种(好的,三种)可能性:

1)如果您的数据/应用程序可以在上传应用程序之前预先处理或分配数据,请执行评论中的HubertL建议,并仅将运行应用程序所需的数据上传到shinyapps.io。在本地运行需要完成的操作,导出结果,并将结果和依赖于用户交互的代码上传到闪亮的应用程序。

2)如果您需要访问比上传到shinyapps.io更大的数据集,您可以远程托管它并通过URL加载它。如果阅读纯文本或CSV数据,readLines('your_data_url')read.csv('your_data_url')应该可以解决问题。有关JSON或XML数据,请参阅jsonliteXML包。

3)如果您将在外部托管数据的地方恰好是(虚拟专用)服务器,您可以在其上安装Shiny Server并在那里执行所有操作。

希望有所帮助!