対象読者
- Pythonの基本的な文法を理解しておりデータ解析のスキルアップに取り組みたい
サンプルの動作確認環境
- MacOS 10.13
- Anaconda 5.1
- Python 3.6
- Jupyter Notebook 5.4
探索的データ解析の流れを確認
まず対話型環境による作業の流れを確認します。Jupyter notebookのような対話型環境では、次の流れに従って作業が進みます。
- コードを書く
- 実行する
- 結果を表示する
- 以上を繰り返す
この繰り返しはREPL(Read-Eval-Print Loop)と呼ばれます。この作業の流れはデータ加工やモデル(統計や機械学習の数理モデル)を少しずつ組み立てていく際に役立ちます。より一般的なコーディング作業の流れ(編集、コンパイル、実行、デバッグの繰り返し)では、プログラムを完成させてから分析を行うことになります。コードを書いて分析までのサイクルが大きくなり、作業量と時間は大きくなりがちです。
対話型環境では小さな実験的なコードから順に組み立てを行い、パラメータを少しずつ調整する作業になります。この作業の流れは、モデルを試行錯誤しながら作成するのに適しています。
探索的データ解析とは
探索的データ解析とは、モデルありきではなく、データを実際に観察したり加工したりしながらデータの価値を見いだしていく解析手法です。
「仮説検証型データ解析」が仮説を先に立てて、それを検証するためにデータを確認していくのに対して、探索的データ解析では仮説を立てず、データ自体と向き合いながら分類や分割など繰り返しながら特徴的なデータを探索していきます。
探索的データ解析では、先述した対話型の環境によるコーディング作業の流れが相性がよいです。今回は対話型環境としてJupyter Notebookを用いながら探索的データ解析をしていくプロセスを紹介します。