ユーザーがパラメーターとしてRscriptに渡されるいくつかの入力を入力し、結果をユーザーに返すことができるWebインターフェイスを開発する必要があります。
同様のWebインターフェイスを実行したことがある人にいくつか質問があります。
- 使用するWebフレームワーク
- WebインターフェイスとRscripts(Webアプリアーキテクチャ内)を通信する最も簡単な方法は何ですか
- サーバーにRをインストールする必要があります(はいの場合、WebインターフェイスからRscriptを起動する方法)
Rには独自のWebサーバーがあるため、R内ですべてを実行できます。その後、フレームワークを選択したり、相互に通信したりする必要はありません。Rフレームワークを使用するだけです。
http://cran.r-project.org/web/packages/Rook/index.html
パフォーマンスやその他の理由でそれが気に入らない場合は、ほとんどすべてのフレームワークが何らかの方法でRと通信するため、使い慣れたものを使用してください。私はDjangoを使用し、Rpy2を介してRを呼び出すか、Rserveプロセスを実行しますが、PHPまたはJavaでプログラムできる場合は、それらの言語に基づくフレームワークを使用します。R以外でプログラミングできない場合は、Pythonを学ぶか、Rookを使用してください。
Rstudioには、UIにnode.jsを使用するShinyという新しいサーバーがあります。
Rstudioは、R用のWebインターフェイスを提供します。http://rstudio.org/docs/server/getting_startedを参照してください。
非常に便利な方法は、RstudioサーバーとRookを組み合わせることです(リンクについては他の回答を参照してください)。
Rstudioサーバーは、ネットワーク内の誰もがアクセスできるRサーバーをセットアップするための非常に簡単な方法を提供します。通常、これを使用して、そのサーバーでスクリプトを編集および実行します。
Rookを使用すると、テキストとインタラクション(入力フィールドなど)用のhtmlコードとRコードを組み合わせて、Webインターフェイスを簡単に作成できます。スクリプトが機能したら、Rstudioサーバー内からスクリプトを起動するだけで、(アクセス権を持つ)すべてのユーザーがRstudioサーバーと同じIPでスクリプトに接続できるようになります。
私はこのセットアップをgoogleVisと一緒に使用しており、非常に満足しています。
私の意見では、OpenCPUは現在、Rでステートレス(REST)Webサービスを作成するための最も高度な無料パッケージです。Shinyは優れたフレームワークですが、無料のコミュニティバージョンを使用する場合は、同時呼び出しを処理しないことに注意してください。 。
RのWebサイトに良いリストがあります-http://cran.r-project.org/doc/FAQ/R-FAQ.html#R-Web-Interfaces