ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

RubyからRを動かす(rserve利用:Linux編)

2015-10-14 15:15:58 | Ruby
ちょっと、redmineのプラグインから(つまり、Ruby on Railsから)
Rにアクセスしたいことがあって、
rserveを使ったんだけど、いろいろトラぶったので、
手順をメモメモ。




■概要
大きく言うと、以下の手順
・LinuxにRを入れる
・rserveを入れる
・Rubyからrserveを呼び出すための準備と呼び出し
以下、順に説明




■LinuxにRを入れる

今回はさくらのVPS、Cent OSに入れました。
入れ方は、

CentOS 6.4 に R をインストールする
http://qiita.com/na_ga/items/6ffe45e6ab89e110f709

にあるとおり

rpm -ihv http://ftp.riken.jp/Linux/fedora/epel/6/i386/epel-release-6-8.noarch.rpm
yum -y install R

インストールの確認は
rpm -qa | grep R-

RPMのパッケージの最新版の確認方法は、上記サイトを参照のこと




■rserveを入れる

R on Rails with Rserve
http://web-salad.hateblo.jp/entry/2013/02/07/000000

に書かれていることを行う

つまり

【Rを起動する】
 →コマンドラインから
R
と打つ(大文字でR)
そうすると、なんか、説明みたいな、Rのいつものがでてくる

【Rserveインストール】
install.packages("Rserve")

と入力

そうすると、どこから取ってくるかを選ぶようになっている
・ミラーサイトを選ぶ(たしか、一番最後)
・ミラー一覧が出たら、日本(Japan)のどこかを選んだ・・
気がした・・まちがってたらごめん

そうすると、インストールできる

確認の為
library()
を実行して、Rserveあること確認

【Rserve-Ruby-clientインストール】

コマンドライン(ターミナルというべき?)から
gem install rserve-client

確認の為
gem list




■Rubyからrserveを呼び出すための準備と呼び出し

まずは、

【rserveを起動する】

RubyからRの機能を使う

にあるように、コマンドラインから

R CMD Rserve

を実行すると、Rのいつものがでてきたあと、Rserveが動いたことが分かるメッセージ

【bundle installではまる】

このあと、Gemfileをなおす。
今回は、redmineプラグインなので、redmineの入っているフォルダの
htdocsの下にあるGemfileに

gem 'rserve-client', require: 'rserve'

を追加して、

bundle install

を書かれているように実行したら、エラーになった。依存性がおかしいらしい。
ということで、今回はbundle installの代わりに

bundle install --no-deployment

を実行した。これを実行しないと、

Ruby on Railsに関する質問です。
http://q.hatena.ne.jp/1204017444

にあるように、irbやrubyで動かすと動くのに、
Railsで動かすと動かないという状態になる。

【プログラム】

あとは、
require 'rubygems'
require 'rserve'
すれば、いろいろかける。
上記に挙げたサイトにサンプルがあるが、
他に書き方については、別エントリで書きたいと思っている。

この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« アジャイルの「ペアプログラ... | トップ | ラボ開発 VS 雇用の調整弁... »
最新の画像もっと見る

Ruby」カテゴリの最新記事