More Related Content
Similar to #TokyoR 39 高速に前処理するNYSOL (20)
More from Satoshi Kitajima (6)
#TokyoR 39 高速に前処理するNYSOL
- 1. NYSOL Partner KSK Analytics
2014/5/31
第39回R勉強会@東京(#TokyoR)
Lightning
Talk
高速に前処理するNYSOL
株式会社KSKアナリティクス
データアナリスト 北島 聡
- 2. NYSOL Partner KSK Analytics
データ分析のプロセス
実は8割以上は前処理
社外データ
業務システム
EXCEL
様々なデータ形式
膨大なデータ量
複雑なデータ構造
分析用
データ
各種・分析モデル
クラス
分類
回帰
分析
パターン
解析
クラスタ
リング
CSV
繰り返しの
前処理
SQLクエリ?
AWK?
ETLツール?
Python?Ruby?
R?
Excel?
- 3. NYSOL Partner KSK Analytics
© KSK Analytics Inc.
3
データ分析のプロセス
実は8割以上は前処理
1. システム担当者はデータ加工を嫌がります
2. SQLは複雑・実行時間もかかりすぎます
3. プログラミングは実行まで時間がかかります
4. DWHや専用ツールはお金がかかります
5. データ加工には特殊な能力が必要?
分析用
データ
繰り返しの
前処理
SQLクエリ?
AWK?
ETLツール?
Python?Ruby?
R?
Excel?
- 4. NYSOL Partner KSK Analytics
© KSK Analytics Inc.
4
・「にそる」と読みます。
・日本発のオープンソースです。
・すべて無料です。
・www.nysol.jp
- 16. NYSOL Partner KSK Analytics
仕組みはシンプル
Mコマンド
・UNIXコマンド
・約70種類
・CSVデータ
組み合わせは無限大
・各コマンドを
「パイプ」で接続
© KSK Analytics Inc.
16
- 19. NYSOL Partner KSK Analytics
STEP.1)
必要になる 「顧客」と「日付」項目を選択する。(「商品」を排除)
mcut
f=顧客,日付
- 20. NYSOL Partner KSK Analytics
STEP.2)
どの日に来店したかがわかればよいので、
同じ顧客で日付の重複行は省く。
muniq
k=顧客,日付
- 22. NYSOL Partner KSK Analytics
STEP.4)
「次日付」-「日付」の日数計算を行う。
mcal
c=‘$d{次日付}-‐$d{日付}’
a=日数
- 24. NYSOL Partner KSK Analytics
STEP.6)
顧客別に日数の平均値を計算
(項目名を「平均来店間隔日数」とする)
mavg
k=顧客 f=日数:平均来店間隔日数
- 25. NYSOL Partner KSK Analytics
シェルスクリプト
以上のような処理を実際にコンピュータで行うためには、1)コマンドラインから入力する、
もしくは2)シェルスクリプトを記述する、の大きく2パターン。
入力ファイルを「購買履歴データ.csv」、出力ファイル名を「結果.csv」とすると、シェルスク
リプトでの記載は以下のようになります。
#!/bin/sh
mcut
f=顧客,日付 i=購買履歴データ.csv
|
muniq
k=顧客,日付 |
mslide
k=顧客 f=日付:次日付 |
mcal
c='$d{次日付}-‐$d{日付}'
a=日数 |
mcut
f=顧客,日数 |
mavg
k=顧客 f=日数:平均来店間隔日数 o=結果.csv
- 26. NYSOL Partner KSK Analytics
© KSK Analytics Inc.
26
約70種類のコマンド(一覧がご覧いただけます)
hmp://www.nysol.sakura.ne.jp/mcmd/jp/index.html
- 27. NYSOL Partner KSK Analytics
© KSK Analytics Inc.
27
日本発のオープンソースです。
みなさん、一緒に応援しましょう!
- 28. NYSOL Partner KSK Analytics
© KSK Analytics Inc.
28
株式会社KSKアナリティクス www.ksk-anl.com
セールス & マーケティング本部 sales@ksk-anl.com
www.nysol.jp
株式会社KSKアナリティクスでは、
NYSOLのビジネスサポート、トレーニング等を
提供しています。お気軽に問い合わせ下さい。
ダウンロードはこちらから
UNIX環境(Linux,
Macなど)で動作