このノートは、Exploratoryを効率的に使い始めることができるように作られた「Exploratoryの使い方」の第1弾、「基礎」編です。
Exploratoryを使用していく上で必要となる「データのインポート」から簡単な「計算」や「可視化」などの基礎となる使い方を、実際にサンプルデータを使って手を動かしながら学んでいただくようにデザインされています。
所要時間は20分ほどとなっています。
それでは、さっそく始めていきましょう!
Exploratoryでは、データのインポートを含め、全てのデータ分析はプロジェクトの中で行います。
そのため、まずは元となるプロジェクトを作成する必要があります。
プロジェクトの管理画面から「新規作成」のボタンをクリックします。
任意のプロジェクト名を入力して作成ボタンをクリックします。
プロジェクトを作成することができました。
プロジェクトを作成することができたら、次はデータをインポートしていきましょう。
今回はサンプルデータとして「Airbnbの東京の宿泊施設」のデータを使用します。このデータは1行が1物件になっており、それぞれの物件に関する価格や広さなどの情報が列として入っています。
データはこちらのページからダウンロードできます。Macをお使いの方は「CSV-UTF8」を、Windowsをお使いの方は「CSV - Shift-JIS」をダウンロードしてください。
Airbnbのデータをダウンロードできたら、ダウンロードしたフォルダを開き、「Airbnb-東京の宿泊施設.csv」をExploratoryの画面にドラッグ&ドロップします。
インポートダイアログが表示されました。インポートダイアログの左側にある項目から、インポート時の設定を行うことが可能ですが、今回は設定は不要なため「インポート」ボタンをクリックします。
任意のデータフレーム名を指定して、「作成」ボタンをクリックします。
Airbnbのデータをインポートすることができました。
画面の表示領域を広くしたい場合は、「サイドバーを隠す」のボタンをクリックすることで、データフレームなどがリストされるサイドバーを隠すことができます。
Exploratoryは、データからインサイトを得るために必要となる「4つのビュー」から構成されています。
各列の統計情報とデータの分布(チャート)を素早く確認できます。
データが表形式で表示され、行単位でデータを細かく確認できます。
チャートを使ってデータを様々な角度から簡単に可視化し、隠れたパターンを素早く発見していくことができます。
様々な統計や機械学習のアルゴリズムを使って簡単にデータを探索し、深いインサイトを素早く発見していくことができます。
データの「列数」や「行数」は常に画面の上部に表示されるようになっています。
サマリビューで表示される統計情報とチャートはそれぞれの列の「データ型」によって変わります。
Exploratoryでは多くのデータ型がサポートされていますが、よく使われるのは以下の5つのタイプです。
数値型の列は、値を等幅(数値の範囲を均等に分ける)に10等分したバーチャートが表示されます。また、バーにマウスを重ねるとその数値の範囲に含まれる行数が表示されるようになっています。
チャートの下には「平均値」や「中央値」といった数値に関する統計情報が表示されます。
カテゴリー型の列は、出現頻度(行の数)を表す横向きのバーチャートが表示され、最も頻繁に出てくる値から順に表示しています。
一意な値の数からは、そのカテゴリー型の列にどれだけの一意な値が存在するのかを確認できます。下記の例では、一意な値の数が59のため、59もの市区町村があることがわかります。
論理値型の列は、TRUEとFALSEの行数を表す横向きのバーチャートが表示されます。また、サマリ情報を見ることで、それぞれの比率を確認できます。
データ型を論理値型にすることで、チャート作成時にTRUEやFALSEの割合を簡単に比較できたり、論理値型に適したアナリティクス(例:ロジスティック回帰)を利用したりすることができます。データ型を論理値型にする方法については、こちらのノートをご覧ください。
日付、または日付/時間型の列は、区切られたそれぞれの期間にどれだけの行の数があるかを表すバーチャートが表示されます。また、最小値と最大値を見ることで、データの期間を確認することができます。
列に欠損値がある場合、欠損値の行数と割合が表示されます。
欠損値は値がないことを表し、テーブルビューで見ると<NA>として表示されます。
サマリビューと同様に、テーブルビューでも列名の下にある緑と赤色のバーにマウスを重ねることで欠損値の数と割合が確認できます。
まずは、市区町村ごとの宿泊施設数(行の数)を表すチャートを作ってみましょう。
チャートビューを開き、タイプに「バー」を選択します。
X軸に「市区町村」、Y軸に「行の数」を選択します。
このままでは、X軸の並び順がひらがな順(漢字の場合はコード順)に並んでいて比較がしづらいため、「並び替え(ソート)」にチェックをつけます。
これにより、市区町村ごとの行の数(宿泊施設数)をバーチャートで可視化することができました。
ところで、このデータには市区町村が59もあるため、バーの数が多く見づらいです。
そこで、行の数(宿泊施設数)が多い「上位20」の市区町村だけを表示してみましょう。
X軸のメニューから「表示する値の制限」を選択します。
タイプに「上位」を選び、結果の数に「20」を指定して適用します。
これにより、行の数(宿泊施設数)が多い上位20の市区町村のみを表示することができました。
宿泊施設の数は「新宿区」が最も多く、その次に「台東区」や「豊島区」が多いことがわかります。
なお、チャートから分かったことはコメントアイコンをクリックして、コメントとして、残すことが可能です。
チャートにコメントを追加すると、コメントを追加したチャートのコメントアイコンが緑色で塗りつぶされ、コメントアイコンにマウスカーソールを重ねると、入力したコメントが表示されるようになります。
Exploratoryでは簡単に計算を行うことができ、その計算結果を新しい列として保存することができます。
今回は、1年間の稼働日数という列をもとに年間稼働率を物件ごとに計算してみましょう。
「1年間の稼働日数」の列ヘッダー・メニューから「計算を作成」を選択し、さらに「標準」を選択します。
「計算を作成」のダイアログが開き、計算エディタの中に列名がすでに入っています。
この「計算を作成」では、Excelでの計算と同じように計算式や関数を使って自由自在に計算を行うことが可能です。
それでは、今回は年間稼働率を求めるために、計算エディタに下記の計算式を入力しましょう。
`1年間の稼働日数` / 365
実行をすることで、「年間稼働率」を求めた列が作成されました。
年間稼働率の小数点以下の桁数が多くなってしまっているため、小数点第二位で四捨五入してみましょう。
年間稼働率の列ヘッダメニューから「数値関数を使う」の「四捨五入(round)」を選択します。
「計算を作成」のダイアログが開き、計算エディタには四捨五入のための「round」関数が既に入力されています。
小数点第二位で四捨五入したいため、digitsに「2」を指定して実行します。
「年間稼働率」の値を小数点第二位で四捨五入できました。
今回紹介したように、メニューから選択したものに応じて、関数やそれに伴う引数は自動で入力されるため、簡単に使い始めることが可能です。
さらに、Exploratoryで使用できる関数は、「計算を作成」のダイアログにある「関数一覧」をクリックすることで、関数名や使い方を調べることができます。
例えば、検索ボックスに「四捨五入」と入力をすると、先ほど使用したround
関数が表示されます。
関数のヘルプの詳細については、詳しく紹介した資料がありますのでこちらをご覧ください。
これらの計算などのデータの加工をしていくと、それらの処理は自動的に右側に「ステップ」として記録されていきます。
なお、ステップのコメントアイコンをクリックすると、ステップの名称を変更したり、ステップにコメントを残すことが可能です。
ステップにコメントを追加すると、コメントを追加したステップのコメントアイコンが緑色で塗りつぶされ、コメントアイコンにマウスカーソールを重ねると、入力したコメントが表示されるようになります。
ステップについて詳しく知りたい方は、こちらをご参照ください。
先ほど計算した「年間稼働率」の平均値を「市区町村」ごとに表すチャートを作ってみましょう。
チャートビューに戻り、前に作ったバーチャートを開きます。
Y軸を「年間稼働率」の列に変えたいところですが、「年間稼働率」が表示がされていません。
Exploratoryでは、チャート・ピンという機能があり、それぞれのチャートは「ピン付け」されているデータラングリングのステップのデータを可視化するようになっています。
このチャートは、ピンが1番目のステップに「ピン付け」されたままです。ということは、この時点ではまだ「年間稼働率」の列はできていません。
そこで、「年間稼働率」や「四捨五入」をした3番目のステップにチャートのピン動かす必要があります。ドラッグ&ドロップでチャート・ピンを3番目のステップに動かしましょう。
これにより、Y軸に「年間稼働率」の列が選択できるようになります。集計関数には平均値(MEAN)を選択します。
年間稼働率の平均値が高い上位20の市区町村を可視化することができました。「小笠原村父島」や「羽村市」などが年間稼働率の平均値が高いようです。
それぞれの市区町村のバーを「部屋のタイプ(例:アパートメント)」によって分けてみましょう。
先ほどと同じチャートを使い、Y軸には「行の数」を選択します。
色(グループ化)に「部屋のタイプ」を選択します。
これにより、市区町村ごとの行の数のバーを「部屋のタイプ」別に色を分けて可視化することができました。
次に、全てのバーを100%にした上で、それぞれの市区町村におけるそれぞれの「部屋のタイプ」の割合を可視化してみましょう。
Y軸のメニューを選択します。
次に、「クイック表計算」の「合計値に対する割合」を選択します。
これにより、全ての市区町村のバーを100%にして、その中での部屋のタイプの割合を可視化することができました。
ほとんどの場合はアパートメント(Apartment)が圧倒的に多いことがわかりますが、中央区と千代田区ではホステル(Hostel)も多いことがわかります。
先ほどは色に対して「カテゴリー(character)型」の列である「部屋のタイプ」を割り当てましたが、色には他のデータタイプの列も割り当てることが可能です。今回は試しに、「数値(numeric)型」の列を割り当ててみましょう。
色(グループ化)に「一泊の価格」を選択します。
これにより、一泊の価格を等幅(数値の範囲を均等に分ける)で5つのカテゴリーに分けて可視化することができました。
色に数値を割り当てた時のカテゴリー化のデフォルトは「等幅」ですが、グループ分けのタイプから「等頻度」や「等間隔」などで分けていくことも可能です。
数値のカテゴリー化のタイプの違いに興味がある方は、こちらの資料をご覧ください。
これにより、他の市区町村に比べて「千代田区」と「板橋区」に価格が高い宿泊施設が多くあることがわかります。
Exploratoryの使い方の基礎版は以上となります!
Exploratoryの使い方シリーズの他のパートには下記のリンクからご確認いただけます。ぜひ次の「可視化」のパートも実施してみてください。