データ分析基盤がほしいと思ったことはありませんか?データ分析はデータサイエンティストの方がやるんでしょ..?自分はエクセルで十分、と思っている方もいるかと思いますが、想像よりも簡単に使用することができます。
今回はデータ分析に用いるbusiness intellgence (BI)ツールであるRedashを用いてデータ分析の基礎について学び、実際にダッシュボードを作ってみたいと思います。Redashはオープンソースのツールでありローカル環境で無料で使うことができます。
BIツールは使いこなすことができればExcelで分析するよりはるかに便利なツールとなります。この機会に是非マスターしていきましょう。
macOS Monterey(12.4), クアッドコアIntel Core i7, メモリ32GB
BIツールとは?
BIツールは、各所にあるデータソースを統合し、ダッシュボード化して閲覧分析ができるツールです。
Excelでは各所にあるデータを切り貼りして統合する手間が必要ですが、BIツールを使えば、それらを一元管理できるなどといったメリットがあります。
またデータが追加されるたびにデータを選択し直して、グラフに修正を加えて..といったExcelならではの煩わしさがなく、手軽に分析を行うことができます。
また今回はオープンソースツールであるRedashを使うので、費用は一切かかりません。
RedashはシンプルなUIで初心者の人でも非常に使いやすいので、多くの企業や個人にも利用されています。
実際にRedashを触ってみて自分の環境にあったデータ分析ダッシュボードを作ってみましょう。
実際にRedashを使ってみよう
redashにはありがたいことに素晴らしいハンズオンを用意している先駆者がいます。今回はこちらにほぼ従う形でいきますが、いくつか補足する点を追加しつつ、より研究者が使いやすいようにカスタマイズしていきます。
https://github.com/kakakakakku/redash-hands-on
環境構築
こちらのハンズオンにはDockerを用いるのでDockerをインストールしてください。(ダウンロードに5分程かかります。)
Mac版はIntel chipとApple chip(M1系)に分かれているので注意してください。(写真はMac版の様子)
Mac版 https://docs.docker.com/desktop/mac/install/
Windows版 https://docs.docker.com/desktop/windows/install/
ダウンロードが終わったら、指示に従ってインストールを完了させてください。インストールが終わったらDockerのアイコンが出来上がっていると思いますのでクリックして起動しておいてください。
次にこちらのGithubリポジトリにアクセスしてください。
https://github.com/kakakakakku/redash-hands-on
Code→Download ZIPに進み、ディレクトリのダウンロードをしてください。
ダウンロードが終わったらデスクトップ上で解凍してください。
ターミナル(windowsの方はPowershell)を開いて、redash-hands-on
ディレクトリに入ってください。
以下のようなコマンドを叩けば入れると思います。
自身のディレクトリ環境に応じて適宜変更してください。
cd ~/desktop/redash-hands-on
redash-hands-on
ディレクトリに入りましたら、以下のコマンドを叩いていきます。
(dockerは必ず起動しておいてください)
$ docker-compose run --rm server create_db
$ docker-compose up -d
このようにdoneがすべて付けば起動完了です。
chromeなどのブラウザを開き、URL欄にlocalhost
と打ち込んでください。
ログイン画面に遷移しましたら、成功です。アカウント作成を進めてください。
以下にハンズオンで使われている例を載せておきます。
- Admin User
- Name
admin
- Email Address
admin@example.com
- Password
任意のパスワード
- Name
- General
- Organization Name
hands-on
- Organization Name
データソース接続
実際にRedashを扱う環境ができたらまずはサンプルデータソースへの接続を行います。
Redashにログイン後、ハンズオンに使うデータソースを用意します。トップページにある「Connect aData Source」をクリックしてください。
出てきた検索画面に、「mysql」と打ち込み、「MySQL」を選択してください。(間違えて、「MySQL(Amazon RDS)」を選択肢ないように気をつけてください)
出てきた画面に、以下の通りに値をうちこみ、「create」ボタンをクリックしてください。これでデータソースへの接続は完了しました。
項目 | 値 |
---|---|
Name | MySQL |
Host | mysql |
Port | 3306 |
User | root |
Password | – |
Database Name | world |
ダッシュボード作成
次に可視化を行います。「Create」をクリックして「New Query」を選んでください。
下図の赤四角のエディターに、queryを書きます。データベースのデータを抽出するときはSQLと呼ばれる言語を使います。
例えば、以下のクエリをエディターに貼り付けてみてください。
SELECT * FROM country;
すると、結果としてテーブルデータが帰ってきたかと思います。
これはcountryというデータに入っているものをすべて取り出した結果になります。
SQLの基本は以下のように書きます。詳しくはまた別の機会に解説します。
SELECT [列名] FROM [テーブル名];
先程の*はすべてを表し、テーブルのすべてを取ってきます。テーブルにどんな列やデータが入っているのか確認するのに便利です。
次は、以下のSQLをエディターに貼り付けてください。
SELECT CountryCode, COUNT(*) AS COUNT
FROM city
GROUP BY CountryCode
ORDER BY COUNT DESC;
以下のような結果が帰ってくると思います。「Add Visualization」をクリックしてください。
以下のように情報を打ち込むと、円グラフが作成できます。Saveしてください。
- Visualization Type
Chart
- Visualization Name
都市の件数
- General
- Chart Type
Pie
- X Column
CountryCode
- Y Columns
COUNT
- Chart Type
タイトルを「都市の件数」にして保存しておいていください。
トップページに行き「New Dashborad」をクリックして名前を入力し、ダッシュボードを作成してください。
都市の件数をクリックし、CHARTの「都市の件数」を選びます。そして、「add Dashboard」を選びます。
無事ダッシュボードにデータを表示させる事ができました!
終わりに
いかがだったでしょうか。データ分析にBIツールを使うイメージがつくことができましたでしょうか。
もっといろいろな可視化方法を試してみたいという場合は、是非Redashハンズオンにチャレンジしてみましょう。
次回は、自分の持っているデータソースに接続する方法を解説したいと思います。