空間分析は様々なデータを入手しそれらを組み合わせ、地図上にプロットし洞察を得る分析手法です。位置データはもちろん、統計データなど複数のデータを扱うことが多く、そのためデータの結合や集計作業など煩雑な手続きを必要とします。また、空間的なマッチングはGISソフトウェアが必須となります。往々にしてGISとスプレッドシートを行き来して分析を進めることがほとんどですが、このような複雑な空間分析を、Alteryx Designerは直感的に行うことができ、さらには処理の自動化まで行うことができます。
本記事では、Alteryx Designer(以下Designer)を使った空間分析について解説していきます。
Designerで空間分析を行う利点とは?
通常はGISソフトウェア上で行われる空間分析ですが、テキストデータの結合などは面倒なため、最初にExcelで集計などを行ってからGISソフトにデータを持ち込むことが多いです。また、GISソフト上で行った処理結果をまたExcelに戻したり、といったこともよく行われます。Designerでは、このデータの集計・加工作業と空間的なマッチング作業を一つのソフトウェア上で行うことができるのが大きな利点です。
また、GISソフトでは空間的な処理を何か一つ行う事にファイルを生成する、という形を取っています。そのため複雑な処理を行うと非常に多くのファイルが生成され、どれが正しいファイルなのか、など整理するのが大変です。このためどのような手順をたどって最終的なファイルに行き着いたのか、など注意して分析を進めないと再現性の点で苦労することがあります。Designerでは処理の順序・データの流れが可視化されるため、後で迷子になることはありません。また、処理が完了するとともに、この処理の流れは再度利用することができるため、再現性が確保され、さらには処理の自動化まで完了しているということになります。
また、Designerはインメモリ処理を行い高速でデータ処理を行うため、データ量の多い空間分析では非常に有利です。
Designerでできること
Designerでできるタスクは以下のとおりです。
- データの加工、結合、集計
- 緯度経度情報から空間データ(ポイント、ライン、ポリゴン)の生成
- 空間データ(ポイント、ライン、ポリゴン)の加工(バッファ、結合など)
- 空間データ(ポイント、ライン、ポリゴン)からの情報の取得(面積、距離など)
- 空間データのメッシュ化
- 地図上への空間データのプロット
- 位置情報を使った空間的なマッチング
- 位置情報を使った近接物の抽出
これらの処理をGUIベースで手軽に行うことができます。以下はワークフローの一例です。一番左にあるアイコン(ツール)にてデータを読み込み、そこから繋がっているアイコンにてそれぞれのアイコンの持つ機能が実行され、空間処理や集計処理などが行われます。
このように、データの流れが可視化され、空間処理前のデータ整形から空間処理後の集計作業まで一気通貫で行うことが可能です。
基本的に、Excelなどのスプレッドシートソフトの持つデータ加工はもちろん、GISソフトができる空間的なタスクまで広範囲にカバーしています。
Designerで扱うことのできる空間ファイル
空間分析を行う際、各種データは空間データを格納できる形式で提供されます。これはCSVなどの形式ではなく専用の形式で提供されます。業界標準はEsri社のShapeファイルです。以下、対応している空間形式を記載します。
- ESRI Personal GeoDatabase(.mdb)(Read/Write)
- ESRI Shapefile(.shp)(Read/Write)
- GIS(.grc)(Read)
- GIS(.grd)(Read)
- Google Earth/Google Maps(.kml)(Read/Write)
- MapInfo Professional Interchange Format(.mif)(Read/Write)
- MapInfo Professional Table(.tab)(Read/Write)
- Pitney Bowes Multi-Resolution Raster(.mrr)(Read)
- Alteryx専用形式(.cydb、.yxdb、.sz、.geo)(Read/Write)
なお、GeoJSONなどはJSON形式として読み込む必要があります。
Designerを使った空間分析の進め方
それでは、実際の空間分析の進め方をご紹介します。ざっくりとした流れは以下のとおりです。
- データを読み込む
- 空間オブジェクトを作成する(元データが空間データを持っていない場合)
- データの結合、集計、空間オブジェクトの加工やマッチングなどを実施
- 地図上へのプロット、テーブル、グラフなどを作成し、レポート化
- ファイル出力
1.データを読み込む
データの読み込みはファイル入力ツールを使って行います。
本記事の少し上で紹介した「Designerで扱うことのできる空間ファイル」に記載されたファイルを読み込めば、そのまま空間オブジェクトを利用することができます。もしくは、空間オブジェクトを持たない緯度経度を数値で持っているようなCSV/Excelファイルの場合、読み込み後に空間オブジェクトを作成する必要があります。
なお、データがGeoJSON(.geojson)の場合は、ネイティブ対応していないので、別の読み込み手段を必要とします。
2.空間オブジェクトを作成する
空間ファイルをそのまま読み込めた場合は、本ステップはスキップできます。これは空間的な処理を行う場合は、ポイント、ライン、ポリゴンいずれかの空間オブジェクトである必要があるからです。これらのオブジェクトは決められた書式で作られたものであり、ソフトウェア内で空間情報を適切に処理するために必要です。そのため、緯度経度情報のみを持っている場合は、必ず空間オブジェクに変換する必要があります(GISソフトやBIツールでも同様の処理が必要です)。
データソースがCSVやExcelなどの場合は、空間オブジェクトを保持できないため必ずこの工程を行う必要があります。同様に、CSVやExcelファイル以外でも、緯度経度情報しか持っていないデータであれば、必ずこの工程が必要となります。
基本的にはポイント作成ツールを用いて緯度経度を空間オブジェクトに変換していきます。
さらにラインやポリゴンといったものに変換したい場合は、緯度経度をポイントデータに変換後にポリビルドツールを用いてさらなる変換を行います。
ところで、ファイル内に緯度経度情報がなく、住所情報しか持っていない場合はどうしたらよいのでしょうか?この場合はジオコーディングを行う必要があります。ジオコーディングは、住所やランドマーク名など文字列の情報から地図データベースにアクセスし、緯度経度情報を取得するものです。通常、このデータベースをローカルに持つのは困難なため、Google社などが提供しているサービスを使うことになります。Designerでは、Google社の提供しているAPIをノーコードで呼び出し、緯度経度情報を得ることが可能です。
3.データの結合、集計、空間オブジェクトの加工やマッチングなどを実施
空間オブジェクトが取得できれば、あとはDesignerの豊富な空間処理機能を使うことができます。専門的な用語を一部含みますが、以下のようなことが可能です。
- バッファ・・・空間オブジェクトから指定した距離を拡大/縮小したものを作成する。ポイントデータから指定距離の商圏を作ることが可能。
- 空間マッチ・・・空間オブジェクトの関係性からマッチさせます。重なっているもの、内側にあるもの、接触しているもの、などを検索できます。
- 空間プロセス・・・空間オブジェクトの結合(マージ)、カット、交差/逆交差オブジェクトの作成が可能
- 最寄り地点検索・・・複数の空間オブジェクトから最も近いものを検索します
- 空間情報・・・空間オブジェクトから、面積、長さ、ノードの数、中心点など様々な情報を取得します
- グリッド作成・・・メッシュを作成します
- 一般化・・・複雑な形状のポリゴンのデータ量を減らす
- スムージング・・・尖ったポリゴンを滑らかに加工します
もちろん、各空間オブジェクトの属性情報や数値などは、通常のDesignerのデータ加工ツールを使って柔軟に集計、加工、結合などが可能です。
4.地図上へのプロット、テーブル、グラフなどを作成し、レポート化
最終的には3で行った処理結果を何かしら表現する必要があります。最も一般的なのは地図上へのプロットです。Designerではレポートマップツールを使って地図上にプロットが可能です。
また、地図以外でも表形式やグラフ化ということも可能となっており、それらをまとめて一つのレポートにすることができます。
ところで、Designerで作成した情報を地図上にプロットし、地図を拡大、縮小しながら色々と検討したい、といった場合はどうでしょうか?実はDesignerはこのようなプロセスはあまり得意ではありません。地図のビューワーとしては、Google EarthやQGIS、BIツールといった外部の可視化アプリが向いているため、それらのアプリ用にShapeファイルなどでデータを出力し連携、活用する、ということが可能です。
5.ファイル出力
最終的に地図にプロットしたデータはレンダリングツールでPDF/PowerPoint/Word/Excel/HTMLなどの形式で出力が可能です。
もしくは、データ出力ツールを使って、他のアプリとの連携用にShapeファイルなどに書き出すこともできます。
まとめ
- Alteryx Designerにおける空間分析の手法の概要について解説しました
- Designerを使うことで他のソフトウェアにない利点について解説しました
- データ結合・加工と空間処理を一つのソフトウェア内で簡単に利用可能
- GUIベースで直感的に分析が可能かつ処理完了と同時に自動化も完了
- インメモリによる高速処理
- Designerでできる空間処理について簡単に解説しました
- Designerで読み込める空間オブジェクトを持つファイル形式を解説しました
コメント