ポリゴンの重なりを分割する前処理をAlteryxで行う方法

2021.04.28

こんにちは。 データアナリティクス事業本部ソリューション部プリセールススペシャリストの兼本です。

商圏分析をする際に重なり合ったポリゴンの処理で困ったことはありませんか。
Alteryxが標準で提供している商圏分析ツールを使って商圏ポリゴンを作成する場合、設定ひとつで必要なポリゴンを作成できますが、既存のポリゴンが重なり合ったときはどうすればよいでしょうか。

このエントリでは、ポリゴンの重なりあった部分を分割する前処理をAlteryxで行う方法についてご紹介します。

空間ポイントから新規に商圏を表すポリゴンを生成する場合

すでに緯度経度の情報をお持ちであれば、空間ポイントを作成して商圏を作成することができます。作成したワークフローはこちら。

商圏分析ツールでは、以下のような設定をして5km半径の商圏ポリゴンを作成しています。

作成されたポリゴンがこちら。いくつかのポリゴンが重なり合っていることが確認できます。

商圏分析ツールの設定に戻り、「オーバーラップを除外する」オプションを有効にしてワークフローを再実行します。

商圏ポリゴンの重なり合った部分がなくなってポリゴン同士の境界で分割されていますね。

既存の商圏ポリゴンの重なりを処理したい場合

次に既存のポリゴンに対して重なりを処理する方法を考えてみます。作成したワークフローはこちら。

  • 事前準備として、バッファツールを使用して5km半径の商圏ポリゴンを作成しています。

  • 領域が重なっているポリゴンを見つけるために空間マッチツールを使用します。ターゲット(T)とユニバース(U)の入力アンカーには同じデータを接続しています。オプションとして「ターゲットとユニバースの交差地点」を設定し、「交差オブジェクトを出力」オプションを有効にしておきます。

  • 空間マッチツールで生成した「交差オブジェクト」は本ツールで指定した2つのポリゴンが交差した部分だけを示すポリゴンです。ちょっとわかりにくいですが、下図のハイライトされた部分が交差オブジェクトを示します。

  • 空間プロセスツールを使用して、オリジナルの空間オブジェクト(#1)から交差オブジェクト(#2)を切り取ったオブジェクトを生成します。ここまでくればほぼ完成なのですが、交差オブジェクトを切り取った関係でポリゴンが凹んでしまっています。

  • 今回のデータではCustomerID=1のデータが複数のポリゴンと重なっていますので、CustomerIDをグループキーとして集計し、再度、交差オブジェクトを生成します。

  • こちらは集計ツールの設定内容です。

  • ポリゴン分割ツールを使ってポリゴンを空間ポイントに分解し、ポリビルドツールで凸包として再統合することで期待するポリゴンオブジェクトを生成することができました。

データが足りない?

はい、その通りです。重複してないポリゴンは最初の空間マッチツールで除外されてしまっているので、ここまでのデータには含まれていません。以下のように不足しているデータをジョインすることで最終的なアウトプットを作成することができます。

最終的なアウトプットは以下のようになります。

まとめ

空間マッチツールや空間プロセスツールを使用することで、ポリゴン同士の重なりを加工して分割する実装についてご紹介いたしました。より高い精度を求めるなら、より高い精度のデータを用意する必要がありますので、空間分析の精度を高める手段のひとつしてお役に立てば幸いです。

以上、最後までお付き合いいただきありがとうございました。