2017-02-17 4 views
0

私は入力として英語のフレーズを取り、次の最も可能性の高い単語を返す関数predictAll()を作成しました。私は関数を参照し、ローカルで正常に動作する光沢のあるアプリケーションを作成しました。アプリケーションでは、ユーザーがフレーズを入力し、アプリは次の推奨語句を返します。外部データセットで実行されるアプリケーションをshinyapps.ioにどのように公開しますか?

私の質問は、ShinyAppsにアプリケーションを公開するにはどうすればいいですか? predictAll関数は、ローカルに格納された大きなテキスト文書に基づいており、それを生成するプログラムを実行するのに約10分かかります。元のデータセットとそれに付属するすべてのコードをアップロードせずに、ShinyAppsで機能することは可能ですか?

1)あなたのデータ/アプリは、あなたがプロセスを事前またはアプリをアップロードする前に、あなたのデータをサブセットすることができるようにされている場合は、HubertLはコメントで提案し、何をすべきか:

+0

ファイルをアップロードしてもう一度それに触れることができないという問題は何ですか?ファイルが大きすぎますか?頻繁に変わるのですか?頻繁に変更されますが大きすぎない場合は、githubのようなアクセシブルな場所でホストし、そこからファイルを読み取ることができます – OganM

+1

最初にモデルを構築してからファイルとして保存し、予測。 shinyappsに収まるようにファイルのサイズを制御し、十分に素早く読み込みます。蓋のために幸運:) – HubertL

答えて

1

は、ここで(まあ、3)可能性は2つですアプリケーションを実行するために必要なデータのみをshinyapps.ioにアップロードしてください。一度ローカルで実行する必要があるものを実行し、結果をエクスポートし、結果とユーザーの操作に依存するコードをあなたの光沢のあるアプリケーションにアップロードします。

2)shinyapps.ioにアップロードできるデータセットより大きなデータセットにアクセスする必要がある場合は、リモートでホストし、URL経由でロードできます。プレーンテキストまたはCSVデータを読み取る場合は、readLines('your_data_url')またはread.csv('your_data_url')のトリックが必要です。 JSONまたはXMLデータについては、jsonliteまたはXMLパッケージを参照してください。

3)外部でデータをホストする場所が(仮想プライベート)サーバーである場合は、その上にShiny Serverをインストールしてすべての作業を行うことができます。

希望に役立ちます!

+1

ヒントをありがとう。私は 'save()'関数を使って自分のn-gramデータフレームオブジェクトを.RDATAファイルにエクスポートしました。また、ファイルからオブジェクトをロードするようにserver.rファイルを更新しました。その後3つのファイル(server.r、ui.r、ngrams.RDATA)をshinyappsにアップロードしました。 – heyydrien

関連する問題