ラベル R の投稿を表示しています。 すべての投稿を表示
ラベル R の投稿を表示しています。 すべての投稿を表示

2012年2月24日金曜日

R+Ubuntu Server+Apache+PHP

R+俺=無限大の可能性?

Osaka.Rでの刺激を受け、Ubuntu ServerにRをインストールしてみたのはこないだの話。
さてそれでは一体これを使ってどう遊ぶんだ?ということで。

今WordPressってものに興味がありまして。
とりあえず「第2回WordBench大阪」参加してきます。
まだ触ったこともありませんがw

そんでもってWordPressはPHPで実装されているらしいです。
ならばRにアクセスするライブラリをとりあえずPHPで書いてみようかって思いまして。
↓こんなイメージです

はいできた!

で、とりあえずパフォーマンスは置いておくとして、ブラウザからちょっとスクリプト走らせて結果を見られるものができました。

■実行中のスクリーンショット



これ頑張って作り込めばIDEみたいなもの作れるんちゃうかな?

と思ったんですがっ!

後で知ったんですが、RStudioっていう素晴らしいIDEが既にあったようです。

まぁIDEは諦めよう。
二番煎じはなんだかイヤだ。

PHPで書いたし、WordPressと一緒に仲良く動いてくれるんちゃうかな?
WordPressまだよぅ知らんけどw

アイディアとか、ないですか?

作ったものの、活用するアイディアが今のところ思いついていませんw
なんか面白いアイディア、ないでしょうか?

作ったスクリプトを公開するかはちょっと考え中です。
実験してみたいって人は連絡下さい。
スクリプトをブン投げますお渡しします。

Rのほかに、apache2、php5、ghostscriptを使います。
インストールはRが動くUbuntu(※)があれば↓5ステップぐらいでできます。
  1. Install packages(apache2, php5, and ghostscript)
  2. Create app(web) directory
  3. Configure permission and owner to directory
  4. Copy script files
  5. Start http service(and open port no.80)
Rが動くUbuntu Serverは、前に書いたエントリが参考になるかもしれません。
実験なら別にVMware Playerでお使いのPCで仮想マシン作っても良いんじゃないでしょうか?

これ使って携帯電話でR!とかできたら、ワクワクしません?

...しませんよねぇw

2012年2月22日水曜日

R+Ubuntu Server

R・中田・雄一郎

↑のタイトルに全く意味はありません。
ただ思いついたことを垂れ流しただけです。

Osaka.Rでの刺激を受け、Ubuntu ServerにRをインストールしてみました。
実験環境なんで無茶苦茶やっても大丈夫ですw
マシンVMware Player 4.0.2
OSUbuntu 11.10 Server x64
コスト¥0+やる気

ホントはね、EC2とかで実験するとまた勉強になるかもなんやけどね。
ちょっと今ケチンボな気分なのw

1.リポジトリ追加

Ubuntu Serverのインストールは完了しているものとします。
VMware Playerならサクっとインストールできるし!
まずはaptでインストールするパッケージのあるサーバをリポジトリに追加せねばなりません。
「/etc/apt/sources.list」の最後に一行加えるだけでいいんやけど、管理上別のファイルのほうが良いと思う。
なんかカッコええし。
というわけで、まずはファイルを以下のコマンドで一つ作成。
# "oneric"は下の注釈を参考にしながらOSのバージョンによって書き換え
$ printf 'deb http://essrc.hyogo-u.ac.jp/cran/bin/linux/ubuntu oneiric/ \n' | sudo tee /etc/apt/sources.list.d/cran.list

※「printf 'deb...」のところ
上記コマンドの"oneiric"って書いてあるのは、Ubuntuのバージョンによって変更してください。
ウチではUbuntu11.10なので"oneiric"です。
他のバージョン使ってる人は↓見て書き換えなされ。
deb http://essrc.hyogo-u.ac.jp/cran/bin/linux/ubuntu natty/    # 11.04
deb http://essrc.hyogo-u.ac.jp/cran/bin/linux/ubuntu maverick/ # 10.10
deb http://essrc.hyogo-u.ac.jp/cran/bin/linux/ubuntu lucid/    # 10.04 LTS
deb http://essrc.hyogo-u.ac.jp/cran/bin/linux/ubuntu hardy/    # 8.04 LTS
deb http://essrc.hyogo-u.ac.jp/cran/bin/linux/ubuntu dapper/   # 6.06 LTS

※サーバはミラーリストから「http://essrc.hyogo-u.ac.jp/cran/」を選びました。
単純に兵庫県はウチから近いからですw

2.CRANサーバの鍵をインストール

以下のように鍵をダウンロードしてインストールします。
$ gpg --keyserver keyserver.ubuntu.com --recv-key E084DAB9
$ gpg -a --export E084DAB9 | sudo apt-key add -

※「gpg --keyserver...」のところの「E084DAB9」について
http://essrc.hyogo-u.ac.jp/cran/bin/linux/ubuntu/README
↑から辿ると、2015-10-18までこのキー(E084DAB9)でいけるらしい。
まぁそれまでに変更されたら知らんです。
Couldn't be verifiedが出た場合は鍵の更新をしようねってお話です。

鍵をインストールしたら、忘れずに以下のコマンドでパッケージリストを更新しときます。
$ sudo apt-get update

3.Rをインストール!

↓のコマンド叩いて終わりですw
$ sudo apt-get -y install r-base-dev

インストールできたら、以下のコマンドでRの起動ができますよ!
$ R

フォントぅっ!!

まず何しよっかなって感じですが、Osaka.Rでちょっと疑問に思っていたフォントについて調べてみました。
…が、挫折しましたw(早
あきらめではない。見切りなのだよ。(何

まぁ結局familyに日本語系のフォント指定してPDF作って、ghostscript通して作ったラスタイメージに別に不満はありませんでしたよってお話。

・ぉコード例(Encoding: UTF-8)
par(family = "Japan1GothicBBB")
par(mar = c(5, 5, 5, 5))
plot(
 rnorm(100,-10,10),
 type="l",
 main = "タイトルぅ!乱数っ!!", cex.main = 2,
 xlab = "X軸に意味は無い", ylab = "Y軸など飾り", cex.lab = 2)

ここいらで今回は力尽きましたとさw

2012年2月21日火曜日

Osaka.R #7

日時:2012/02/12 13:30~18:30

遅くなりましたが、参加してきましたので簡単にレポート、というかまぁいつもの感想です。
毎日コツコツちょっよずつ書いてるのですよ!

会場の阪大、自宅から超近いんで油断してたら遅刻しそうになって車飛ばして行きました。
…が、開始時間を30分間違えていてちょっと時間つぶしていたのは内緒ですw

自己紹介

参加者が一様に自己紹介を行うという…
色々な勉強会がありましたが、こういうのは初めてでした。
学生や院生や教員、教授だったりと、大学関係者が多い感じでした。
サラリーマンってのはそんなおりません。若干アウェーだけど気にしない。

入門者講習

主催者「@phosphor_m」氏自らの発表です。

初心者も安心の、インストール&実際に触ってみよう講座です。

インストールできる環境はWin & Mac & Linuxと充実!
PC持って行きませんでしたが、他の参加者の習熟度具合や環境がちょっと見れて逆に良かったかもしれません。
一番後ろからジロジロ見てましたw

RはApacheなんかと組み合わせて面白いことできないかなーって軽い気持ちで勉強会に参加したので、個人的にはLinuxでのインストールとか気になりました。

統計の勉強とか1ミリたりともしたこと無かったので、そこに触れる話題には全く付いていけませんでしたが、ライブラリの開発の部分がすごく魅力的でした。
あと、Rのスクリプトの配列?っていうかコレクションかな?のインデックスって1から始まるんですって!VBみたいやねw
スクリプトを見ていて、「R言語」?はオブジェクト指向言語と関数型言語の両方を特徴を持っているように見受けられた。
なんかちょっと他の「プログラミング言語」とはちょっと違ったイメージです。

主催のススメ:Nagoya.Rの発足から引退まで&フォントのオハナシ

発表者は「@sakaue」氏。

勉強会なんかの主催はどんどんやったほうがいいよっていうメッセージから。
うん。言えてる。確かに。
チャンスを掴もうぜ!若人よ!って感じですかw

あと、Rでプロットするグラフなんかで使うフォントの変更方法について。
っていうかWindowsとMacでフォント変更の関数が違うんやねwマジっすかw
Linuxではどうなんやろね?ってのが気になるので、後で調べてみよう。

WindowsのMS系フォントではアンチエイリアスが効かないんできちゃないーって言ってはりました。
あとフォントきれいだからMac買え。阿呆。とも(←言ってない

そう、MS系フォントは小さいとビットマップフォントになるんです。
たしか16ポイントくらいまではビットマップフォントやったっけな??
XPあたりで搭載されたメイリオフォントを使えば少し綺麗。等幅やけどねw

Rzパッケージの紹介

主催者「@phosphor_m」氏再登場です!

Rでは「パッケージ」って呼ばれているライブラリを自作できます。
主催者自ら製作した「Rz」っていうパッケージの紹介でした。
っていうかRってGUIのフォーム?的なモノも作れるんや?ほほう。
SPSSでは簡単にできるけど、RではメンドイようなことをGUIで簡単にポチポチっと操作できるパッケージらしいです。
しかしSPSSとはいったいどのような味がするのだ?というレベルの俺には利点があまりわかりませんでした。すんません。
フォームエディタだの高機能なIDEとかは存在するんだろうか?
でなければ、まぁまぁメンドぅーんなコーディングしてそうやなぁって思ったり。でした。

Rでテキストマイニングをする前に

発表者は「@langstat」氏。

データを機械に通す前にそのデータ自身をキレイな形にしておきなさいって話です。
余分なものは取り除いて、ダブってるものは統合して…
全く地味で目立たない作業かもしれないけど、とっても大事。

ホントそのとおりだと思います!

統計だとかもう関係なくて、こういうのを面倒くさがって疎かにしてしまうことへの危険性について、声を大にして警告したい!
ニュースサイト(っていうか2chとか)でチラ見した内容を誇大妄想的に語るおっちゃん!
どこかのサイトで拾ってきたコード例をそのまま実務アプリにコピペしてろくにテストもしないエンジニア!!!

自分の思うものと一致しているか、妥当性を検討したか?
間違いが混じりこんでいないか確認したか?
いらないものが混じりこんでいないか?っていうか全部いらないものじゃないか?
チームメンバーの偉大なる努力の歯車を再開発していないか!?

インターネットが当たり前、情報のコピペが簡単にできる現状、その情報にゴミが沢山紛れていると考えてほしい。
こういったゴミを丹念に取り除いて磨き上げた情報の珠玉を作り出す作業はとっても大事だと。

俺はこうしてすっかり感化されてしまいましたとさw

Google AnalyticsとRを使ったアクセスログの主成分分析

発表者は「@seisumi」氏。

実はアジェンダを見ていて一番気になっていた発表でした。
moodleでとあるサイトを構築し、そのアクセスログをGoogle AnalyticsにかけてやってRでデータマイニングしてやったんだぜって内容です。俺は昔社員研修用にmoodleでeラーニングを構築しようとして放り出した人ですwwあれから転職してしばらく経ったことだし、もう一度手を染めたいなと、「moodle」って単語を聞かされて刺激を受けました。

seisumiさんのキャラクターにもう首ったけだったんですが、興奮はやや抑え目にワクワクして聞いてました。

が、正直やっぱりデータマイニングの部分は知識がゼロなんでさっぱりでした。
それ以外の内容については、耳で聞いていて、目で見ていてすごくわかりやすい発表で俺は好きです。
思わずコクります。

個人的にはログをどのように整形して、どのようにRに流し込んでやったのかなーなんて、実際の手順の部分が気になりました。
最終的にプロットに落とし込むまでにどうデータを料理してやろうかなーって考えるのに手間がかかる感じなんでしょうか。
一つ前の発表の、「データの整形」って部分が非常に大切だってことが再認識させられます。
あとはどの情報が必要で、いらないのか、経験とデータに対しての十分な理解が必要なんだなと、データマイニングの奥深さが垣間見えました。

Rで方言のネットワーク分析

発表者は「@aonoa732384」嬢。
まずは一言。美人でした。
見たい人は勉強会に参加しなはれw

内容としてはオンラインのフリーのデータ(「日本語情報資料館」より)をターゲットにしてデータマイニング、プロットを作るデモでした。
っていうか「めばちこ」にそんなに沢山の言い方があるのかとちょっと驚きました。

スクリプトのことを「おまじない」って呼んでましたので、我々プログラミングをする人々は「まじない師」と呼ぶのがいいんだと思います。

それはともかく、実際に行った作業をスライド上でキレイに可視化、スクリプトコードも短めにまとめてあってすごい聞きやすかったです。
で、肝心の「ネットワーク分析」ですが、これ実は何のことかわからなくて、EthernetやWebやらの用語の「ネットワーク」をイメージしていました。
ぜんぜんちゃいましたw

いや、ネットワークが何らかのリレーションを持った集合体だと考えるならば、意味的にはつながるのかもしれません。
分析結果が何らかのリレーションを持つものとして、その関係性?強度?そのあたりを可視化するのがネットワーク分析なんでしょうか?
ぜんぜんわかりませんw
ググレカスって感じですよね。わかります。


まとめー!

Rへの興味は、とある目的のためインターネットからクロールしたデータをRを使って分析し、結果を利用してWebサービスを構築できないか、といったところが発端でした。
しかし勉強会に参加してみて、統計学や言語学なんかへの造詣も少なからず必要ではないかと、またその奥深さの一端に触れて少し二の足を踏んでいる今です。

しかし、目的があればそれを実現するためにはどのようなステップを踏めばいいのか考えて一つずつ達成していく。
このステップのアイディア引き出しに一つ「R」が加わったのは大きな成果だったと言えます。
あとは自分の得意分野とRとをどう結びつけられるかが鍵だろう、そのように思います。

それでは、ここまでっ!