PentahoのインストールとサンプルBIの起動

オープンソースBIプラットホームとして知名度の高いPentahoのインストールとサンプル画面の表示まで行います。

前提条件

環境:
サーバー:AmazonAWS(m3.medium)
OS:AmazonLinux(amzn-ami-pv-2014.03.1.x86_64-ebs)

JVM:
[user@server ~/]$ java -version
java version "1.7.0_55"
OpenJDK Runtime Environment (amzn-2.4.7.1.40.amzn1-x86_64 u55-b13)
OpenJDK 64-Bit Server VM (build 24.51-b03, mixed mode)

Pentahoのバージョン:
biserver-ce-5.0.1
あらかじめセキュリティー設定で8080ポートを開けておきます。
以降の作業はサーバー上での作業ユーザーで行います。

ダウンロード

[user@server ~/]$ wget http://sourceforge.net/projects/pentaho/files/Business%20Intelligence%20Server/5.0.1-stable/biserver-ce-5.0.1-stable.zip

解答

[user@server ~/]$ unzip biserver-ce-5.0.1-stable.zip

実行用ディレクトリを作成し、ファイルをコピー

[user@server ~/]$ mkdir /var/www/pentaho
[user@server ~/]$ cp ./biserver-ce /var/www/pentaho/

デモ用設定のPentahoを起動

プロンプトが出るので、「OK」を入力
!!スクリプト投入後、起動か完了するまでに数分かかります。
[user@server ~/]$ cd /var/www/pentaho/biserver-ce
[user@server biserver-ce]$ ./set-pentaho-env.sh
[user@server biserver-ce]$ ./start-pentaho.sh
/var/www/pentaho/biserver-ce
/var/www/pentaho/biserver-ce
DEBUG: Using JAVA_HOME
DEBUG: _PENTAHO_JAVA_HOME=/usr/lib/jvm/jre
DEBUG: _PENTAHO_JAVA=/usr/lib/jvm/jre/bin/java
--------------------------------------------------------------------------------------------
The Pentaho BI Platform now contains a version checker that will notify you
when newer versions of the software are available. The version checker is enabled by default.
For information on what the version checker does, why it is beneficial, and how it works see:
http://wiki.pentaho.com/display/ServerDoc2x/Version+Checker
Press Enter to continue, or type cancel or Ctrl-C to prevent the server from starting.
You will only be prompted once with this question.
--------------------------------------------------------------------------------------------
[OK]:OK

ブラウザからデモ用画面を表示

http://54.199.202.73:8080/pentaho/
次のテストユーザーでログインします。
User:suzy
Pass:password
(解説には"Suzy"とありますが、誤りのようです)

次の画面が表示されればOKです。


感想:「データを武器にする - 勝つための統計学」(渡辺 啓太)

データ分析のための書籍感想[002]


「データを武器にする - 勝つための統計学」
著者:渡辺 啓太
出版:ダイヤモンド社

一言で言うと、”納得させるためのノウハウ本”


女子バレーボールチームをロンドン五輪で銅メダルに導いた「情報戦略担当アナリスト」によるデータ活用のための指南書。「統計学」とありますが、統計学が何かを多少とも把握している人はタイトルのこの部分は無視して読まなくてはいけません。また、データ分析の手法てきな紹介もほとんどありません。超一流のスポーツ選手という、特殊なキャラクターに対して、データを元にした説明・指導等をいかに行っていくかということを通して、自分の知見を相手に伝えるノウハウを書き起こした書籍です。

例えば、相手の悪いところを説明する場合は、良いところ、悪いところ、良いところ、のサンドイッチで説明せよ。などのように、データや統計とは関係の薄い部分も多くみられる書籍です。データ分析に興味があって自分の技術を磨きたいと考えているような読者は想定していません。データ分析の実例として一番大きく取り上げられているが、選手のプレイシーンを編集したモチベーションアップビデオというあたりも、仮説検定とか手法の正しさとかいった言葉とは無縁の書籍である印象を強くしています。

この書籍の面白いところは、やはりスポーツ選手の指導がモチーフの中心にある点です。業務としてデータ分析を行っている者として、自分の分析結果や分析方法を、それらの知識が無い相手にアピールしなければいけない場面は多いと思いますが、そういった時にどうすべきかという事であれば、参考になるノウハウが多く紹介されています。偏見かもしれませんが、スポーツ選手に対して統計手法の説明や分析結果の意味をくどくど説明しても試合結果に影響するようには思われません。説明相手としては相当難易度が高い相手と思いますが、そういった相手に分析レポートを提出するような困難に立ち向かう場合にはこの本のノウハウが役立つかもしれません。

感想:「現場ですぐ使える時系列データ分析」(横内大介/青木儀充)

データ分析のための書籍感想[001]


「現場ですぐ使える時系列データ分析」
著者:横内大介/青木儀充
出版:技術評論社

一言で言うと、”時系列分析≒以前の自分との相関は?”


2003年にグレンジャー教授とエングル教授がノーベル経済学賞を受賞して脚光を浴びた時系列分析を非常に分かり易く説明した書籍です。私は学術的な部分はまったく門外漢ですが、この書籍で取り上げられている数式は(おそらく意図的に)比較的簡易なものが中心なので、一般的な統計書の数式を読める方であればこの書籍のみで、時系列分析がどのような発想でデータを扱おうとしているかを把握することができます。もちろん実際は遥かに難しく深い分野と思いますが、少なくともそう思わせるほど説明が良くまとまっています。

前半が理論の説明で、後半はRを用いた適用例になっています。例は株の値動きの比較や銘柄の分類です。著者の一人が証券情報サービスの最大手Quick社の人間なので、読んでいて説得力があります。私が大学で勉強した心理系の統計学は複数群の比較が中心でしたので、この書籍で紹介されている時系列分析は興味があって読みましたが、この分野が初めての読者にも十分な難易度と満足度がある書籍です。付録としてRの説明にある程度ページを割いていますが、このあたりは少し冗長な印象があり、できれば適用例の方が良かったと感じました。

R言語のデータフレーム参照をSQLと対応させてみる

RのデータフレームでSQLを使う方法もあるようなのだけれど、SQLならこうやるんだけど、データフレームでは?みたいな例を載せています。

検索

# 全行表示
# select * from data_frame
data_frame

# 行数取得
# select count(*) from data_frame
nrow(data_frame)

# 列指定
# select refer from data_frame
data_frame[,'refer']

# 先頭のみ表示
# select * from data_frame limit 10
head(data_frame, 10)

# 条件指定(数値)
# select * from data_frame where x=1
data_frame[data_frame$x==1,'refer']

# 条件指定(文字)
# select * from data_frame where y='a'
data_frame[data_frame$y=='a','refer']

# 条件指定(部分一致)
# select * from data_frame where z like '%keyword%'
data_frame[grep('keyword',data_frame$refer),]

# 複数条件指定
# select * from data_frame where x=1 and y='a'
data_frame[data_frame$x==1 & data_frame$y=='a','refer']

# 複数条件指定(条件抽出関数使用時)
# select * from data_frame where z like '%keyword%' and x=1
subset(data_frame[grep("keyword",data_frame$z),], x==1)