web-dev-qa-db-ja.com

RプログラムへのWebインターフェイス

ユーザーがパラメーターとしてRscriptに渡されるいくつかの入力を入力し、結果をユーザーに返すことができるWebインターフェイスを開発する必要があります。

同様のWebインターフェースを使用したことがある人にいくつか質問があります。

  1. 使用するWebフレームワーク
  2. WebインターフェイスとRscripts(Webアプリアーキテクチャ内)を通信する最も簡単な方法は何ですか
  3. サーバーにRをインストールする必要がありますか(インストールする場合は、WebインターフェイスからRscriptを起動する方法)
19
user1331120

Rは独自のWebサーバーを持っているので、R内ですべてを行うことができます。そうすれば、フレームワークを選択したり、相互に通信したりする必要はありません。Rフレームワークを使用するだけです。

http://cran.r-project.org/web/packages/Rook/index.html

パフォーマンスやその他の理由でそれが気に入らない場合は、ほとんどのフレームワークが何らかの方法でRと通信するため、使い慣れたものを使用してください。 Djangoを使用し、Rpy2経由でRを呼び出すか、Rserveプロセスを実行しますが、PHPまたはJava次に、これらの言語に基づくフレームワークを使用します。R以外でプログラミングできない場合は、Pythonを学ぶか、Rookを使用します。

13
Spacedman

Rstudioには、UIにnode.jsを使用するShinyという新しいサーバーがあります。

https://github.com/rstudio/shiny-server

9
Hari Titan

RstudioはRにWebインターフェースを提供します http://rstudio.org/docs/server/getting_started を参照してください

7
Markus Graf

Apache Webサーバー内でRを実行できます。 http://rapache.net/

5
Daniele

Rstudio ServerとRookを組み合わせるのが非常に便利な方法です(リンクについては、他の回答を参照してください)。

Rstudio Serverは、ネットワーク内の誰でもアクセスできるRサーバーをセットアップする非常に簡単な方法を提供します。通常は、そのサーバーでスクリプトを編集して実行するために使用します。

Rookを使用すると、テキストおよびインタラクション用のhtmlコード(入力フィールドなど)とRコードを混合することにより、Webインターフェイスを簡単に作成できます。スクリプトが機能したら、Rstudio Server内から起動するだけで、(アクセス権のある)すべてのユーザーがRstudio Serverと同じIPでスクリプトに接続できます。

この設定をgoogleVisと一緒に使用しており、非常に満足しています。

5
nassimhddd

私の意見では、OpenCPUは現在、Rでステートレス(REST)Webサービスを作成するための最も高度な無料パッケージです。 。

3
Bastian

RのWebサイトには良いリストがあります- http://cran.r-project.org/doc/FAQ/R-FAQ.html#R-Web-Interfaces

0
mut1na