Alteryxユースケース「RESAS API を使って 宿泊動向を さくっとビジュアライズしてみました」

![usergroup_logo.jpg](https://qiita-image-store.s3.amazonaws.com/0/328429/ec7f8ea9-f856-c7d8-dbd1-7e7743527f5f.jpeg)
当エントリは「Alteryx User Group in 東京 Advent Calendar 2018 」21日目のエントリです。  
こんにちは。Alteryxユーザーグループの まえだ です。  
日本国内でもオープンデータが盛り上がってきましたね。日頃の分析業務でも活用シーンが増えてきた実感があります。
今回は Alteryxのユースケースとして、内閣府 地方創生推進室 が提供している オープンデータ（RESAS 地域経済分析システム) のAPIからデータを抽出・加工して、都道府県間の人の移動をTableauでのビジュアライズしてみたいと思います。  
## 目次
* アウトプット
* 準備するもの
* 作り方
* まとめ

## アウトプット
* 都道府県別の宿泊者移動(From-To)データ
    * Alteryx で RESAS-API に接続しデータ抽出と加工する
* Tableau でビジュアライズ
    * Tableauを使って都道府県間の移動をマップで表現するこんな感じで↓![FromToMap1.gif](https://qiita-image-store.s3.amazonaws.com/0/328429/8c4f835a-35b2-295f-4d6c-e0808bf4dfef.gif)

## 準備するもの
   * Alteryx Designer(2018.4)
    * これがなければ始まりません。2014年から使わせてもらっていますが、今年は初めてカンファレンス([Alteryx Inspire](https://www.alteryx.com/inspire-2019))にも参加して、さらにファンになりました。機能進化も早く、UIもどんどん良くなっています。
   * Tableau Desktop (2018.2)
    * ほぼ毎日使っています。以前はダッシュボードを多く作っていましたが、最近は探索型分析がメインです。Alteryxと相性抜群です。
   * RESAS-API Key ([詳細はこちら](https://opendata.resas-portal.go.jp/))
    * 内閣府が提供している GIS用の API データセットです。データの種類も豊富で、ハッカソンやコンテストなどのイベントも開催されているようです。地方創生の文脈で開発されている点も素敵ですね。地域特性をデータで把握しデータドリブンに地方を盛り上げていく。オープンデータ活用の好事例につなげたいところです。
   * 県庁所在地の緯度経度データ
    * 都道府県間の移動をビジュアル化するための地点情報として県庁所在地の緯度経度が必要です。「県庁所在地 緯度経度」というキーワードで検索して最初にヒットした [こちら](https://www.benricho.org/chimei/latlng_data.html) のサイトのファイルを利用させてもらうことにしました。

##作り方
ざっくり分けると↓のような6つのステップになります
1. AlteryxでRESAS-APIから都道府県のマスタを取得【A】
2. 【A】のマスタをキーにAPIから 都道府県間の移動データを取得【B】
3. 【B】のJSONを行列に加工【C】
4. 【C】と 県庁所在地の緯度経度(Excelファイル)をJOINして tableau用CSVを出力【D】
5. Tableau で 【D】をユニオンして FromとTo のデータに加工【E】
6. 【E】をマップ形式でビジュアライズ  
Alteryx ワークフロー の全体感はこんな感じです
![work_flow.PNG](https://qiita-image-store.s3.amazonaws.com/0/328429/79955c30-cd4e-2f3e-7591-9dea3071a12a.png)


####1.都道府県マスタを取得する
text input ツールで RESAS-APIのエンドポイントを設定![A_1.png](https://qiita-image-store.s3.amazonaws.com/0/328429/9adc3d94-317a-30bc-6700-69195673457e.png)
***
Downloadツールで API認証用のヘッダーを付与![A_2.png](https://qiita-image-store.s3.amazonaws.com/0/328429/74459a1e-1a65-c8b6-6d83-79824051fc4a.png)  

***
JSON PARSE ツールでフィールドを分解
![A_3.png](https://qiita-image-store.s3.amazonaws.com/0/328429/c6d47af7-a9a3-19ec-dea7-bb15115a3bf2.png)

***
Text To Columns ツールで ドット区切りのフィールドを作成
![A_4.png](https://qiita-image-store.s3.amazonaws.com/0/328429/1ecbc5bf-8da0-4daf-97cd-fd40992a9b61.png)

***
Cross Tab ツールで 縦から横に変換
![A_5.png](https://qiita-image-store.s3.amazonaws.com/0/328429/da245aee-63ad-18e5-9325-b1a5bc5dcc9d.png)

***
都道府県マスタ【A】が取得できました
![A_6.png](https://qiita-image-store.s3.amazonaws.com/0/328429/7519078a-74ab-aa8b-58e6-33559c738027.png)
***
####2.移動データを取得する
Formula ツールで 都道府県ごとのrequest parameter を作成
![B_1.png](https://qiita-image-store.s3.amazonaws.com/0/328429/63620473-cddc-2ccf-3122-6f0ec2795f8c.png)

***
DownloadツールでAPIに接続し都道府県間の移動データ【B】を取得
![B_2.png](https://qiita-image-store.s3.amazonaws.com/0/328429/6ddf6caa-0676-96ff-bf8f-2ad7ae8528c5.png)
***
####3.JSONを加工
先ほどの【A】を作成する手順と同様に JSON Parse → Text to Columns → Cross Tab と進めます
![B_3.png](https://qiita-image-store.s3.amazonaws.com/0/328429/b31f0370-c806-edb0-be80-973cef976ab1.png)
都道府県間データ【C】が作成完了![C_2.png](https://qiita-image-store.s3.amazonaws.com/0/328429/2e61d135-e735-718b-6738-3d119412bbbc.png)

***
####4.県庁所在地の緯度経度をJOIN
Excelファイルのsheet1から自治体コードと緯度経度を抽出【D】
![D_1.png](https://qiita-image-store.s3.amazonaws.com/0/328429/0d600121-e4e7-5035-ca21-554461575512.png)
【C】と【D】をJOINしてCSVファイルを出力
![D_2.png](https://qiita-image-store.s3.amazonaws.com/0/328429/bda1c372-49b7-c729-3513-dfed4412a72d.png)

***
####5.From-To の形式に加工
ここからはTableauにバトンタッチして加工を続けていきます。
パスを示すマップの作成方法は[こちら](https://onlinehelp.tableau.com/current/pro/desktop/ja-jp/maps_howto_origin_destination.htm)に詳しい解説があります。今回は以下のようにFromとToを2行に分けるため【D】をユニオンします![E_1.png](https://qiita-image-store.s3.amazonaws.com/0/328429/e7c2a5c2-cce1-29d9-4a6c-646ac3a01cb6.png)1行目ならFrom県の緯度、それ以外ならTo県の緯度を指定します![E_2.png](https://qiita-image-store.s3.amazonaws.com/0/328429/10c0e33c-79c7-7065-8993-207e6343d1f3.png)経度も同じく計算フィールドで加工します
***
####6.マップ形式でビジュアライズ
緯度経度、FromとToのパターンと順序、都道府県のフィルタを追加して完了です
![FromToMap2.gif](https://qiita-image-store.s3.amazonaws.com/0/328429/54ee853f-26c2-a1a6-bcaa-3790843fd05d.gif)

##まとめ
* 「Alteryx × RESAS-API × Tableau」を組み合わせることで、データ抽出と加工、ビジュアライズがノンプログラミングで実施可能です

参考リンク
https://dev.classmethod.jp/business/business-analytics/tableau-data-day-out-tokyo-report-luncheon-session-classmethod-alteryx-analytics-process/
https://www.slideshare.net/RecruitLifestyle/why-alteryx-alteryxanalytics-process