[レポート]トレーニングセッション「高度な空間解析」- Alteyrx Inspire 2018 #alteryx18

現地時間2018年06月04日〜2018年06月07日に米国アナハイムで開催されたAlteryxの年次カンファレンスイベント「Inspire 2018」。今回クラスメソッドからは計4人のメンバーが現地参加しました。

当エントリではイベント4日目に行われたトレーニングセッション「高度な空間解析」について、その内容をレポートしたいと思います。

目次


 

セッション概要

当トレーニングセッションの概要は以下の通りです。

セッションタイトル:
 Advanced Spatial Analytics(高度な空間分析)

トレーニング概要:
Ready to take your skills in spatial analytics up a notch? Learn to apply spatial processes to data, utilize Core Data to geocode data, and display your findings with a map.
(空間分析のスキルを一歩上げる準備はできていますか? データに空間処理を適用し、コアデータを使用してデータをジオコード化し、結果を地図で表示する方法を学びます。)

 

セッションレポート

ハンズオンセッションの主な内容をレポートします。

 

イントロ:「Alteryx」という名前の由来

  • Alteryxはセルフサービスデータ分析のための主要なプラットフォームとして知られている
  • それは(ほとんどの組織にとって)どういう意味?
    • 反復可能なワークフローを使用してすべての関連データを準備、ブレンドおよび分析
    • 「日、週、月」では無く、「数秒、数分、または数時間」で洞察を提供
  • これまでは、Alteryxは「地理的なBIスイート」内の製品の1つ、という位置付けだった
  • Alteryxの「y」と「x」はそれぞれ「Latitude」と「Longitude」を表す。

 

空間データ

なぜ空間分析なのか?

  • さまざまなタイプの質問に、空間分析を使って答えるため
    • これらの生鮮食品は、DCから店舗に行くためにどのくらいの距離を移動する必要があるか?
    • 潜在的な暴風の10マイル以内に洪水被害者/犠牲者が何人いるか?

「空間データ」とは何か?

  • 視覚的表現を可能にする、ある種の地理的構成要素を有するデータ
  • 追加の空間処理(距離の測定、運転時間の設定、カスタム境界の作成など)
  • 空間データは、データストリーム内の(空間オブジェクト)フィールドによって定義される

 

一般的な空間情報のデータ種類

空間データタイプ
Point(点) 家、店舗の位置、交差点
Line(ライン) 街路、ルート、河川
Polygon(ポリゴン) 郵便番号、国、州、半径、ある地点周りの運転時間


ここで本編のツール個別内容紹介に入る前に、同じく空間分析関連のトレーニングセッションとして実施されていた「Introduction to Spatial Analytics」の内容についても、ツールの内容を学ぶ上で参考となるので合わせてご紹介したいと思います。

 

「Pointの作成」と「近傍探索」

 

CREATE POINTSツール(ポイント空間オブジェクトを作成)

  • Xフィールド(経度)とYフィールド(緯度)を定義する事で「ポイント空間オブジェクトタイプ」を作成
  • Spatial Match Tool、 Distance Tool、Trade Area ToolなどのAlterxの空間ツールを使用した空間処理用の入力データを準備するために行われる
  • 受信フィールド名は様々
  • 出力データストリームにはCentroidと呼ばれる新しいフィールドがあり、レコードにはマップ上の各レコードを表す空間オブジェクトが含まれる

 

FORMULAツール(関数を使った空間情報を編集)

  • 「Preparation(準備)」カテゴリにあるこのツールは、空間的な処理にも使える
  • 新しいフィールドの作成、またはさまざまな式を使用した既存のフィールドの編集
  • 他の多くの機能と同様に動作する30以上の空間機能を備えている(下記リンクの「Spatial」配下に空間データに対して動作する関数の一覧を確認出来る)
    • Functions
    • 関数 (日本語ドキュメント。関数の意味を推し量る事はできるが、肝心の関数部分の記載が消えてしまっている...w)

 

FIND NEARESTツール(最も近い点またはポリゴンを判定)

  • 1つのファイル内の最も近い点またはポリゴンを2つ目のファイル内の点に識別
  • アプリケーションで、店舗に最も近い顧客の場所を特定する...というようなケースを実現する場合、それぞれの関係性は以下の形となる
    • ターゲット(Target): 空間オブジェクト(店舗)
    • ユニバース(Universe): 最も近い空間オブジェクト(顧客)
    • 結果
    • 一致(Matched): 基準を満たすレコード
    • 一致しない(Unmatched): 一致するデータがないターゲット

 

距離の計算

 

DISTANCEツール(要素間の距離または運転時間を計算)

  • ポイントと別のポイント、ライン、またはポリゴンの間の距離または運転時間を計算
    • 点と点
    • 点とエッジ(ラインまたはポリゴン)
    • 2つの空間オブジェクト間のドライブ距離またはドライブ時間(サードパーティの空間パッケージをインストールする必要あり)

 

TRADE AREAツール(ポイントオブジェクトの周囲に半径・ドーナツ・ドライバーのポリゴンを定義)

  • 指定したポイントオブジェクトの周囲に半径、ドーナツ、またはドライバーのポリゴンを定義する
    • Radius(半径)には単一の値、またはカンマで区切った値を入れる事も出来る(例: value = 1,2,5)
    • 複数のポリゴンの重なりを避けることが出来る
    • 距離を使用してドーナツを描くことが出来る(例:value = 1-2、4-5)
    • Drivetime Polygonsはサードパーティの空間アップグレードでも利用可能

 

SPATIAL INFOツール(空間情報の抽出)

  • 空間オブジェクトに関するテーブル情報を抽出
  • 属性には、エリア、空間オブジェクトのタイプ、パーツ数、ポイント数、緯度経度座標、長さといった情報を含める事も可能

 

SPATIAL MATCHツール(2つの空間オブジェクトセット間の空間関係を識別)

  • 任意のタイプ(点、線形、多角形)の2つの空間オブジェクトセット間の空間関係を識別
  • 例)
    • ターゲット (T) - 顧客空間オブジェクトポイント   - ユニバース (U) - 空間オブジェクト貿易エリアを格納する
    • 結果:
    • 一致(M): 商圏内の顧客
    • 不一致(U): 商圏外の顧客
  • ユニバース(U)はオプション入力。またリレーショナル空間オブジェクトはファイルパスで定義可能

※トレーニングセッション「Introduction to Spatial Analytics」の内容はここまでとなります。


 

空間オブジェクトの分割と構築

 

POLY-SPLITツール(空間オブジェクトをコンポーネントに分割)

  • ポリラインおよびポリゴンの空間オブジェクト(空間フィールド)を簡単なコンポーネントに分割
  • ポイント:空間オブジェクトをポイントコンポーネントに分割
  • 領域:ポリゴン空間オブジェクトを個々のコンポーネントポリゴンに分割
  • 詳細領域:ポリゴン空間オブジェクトとして個々のコンポーネントと穴(Hole)を出力する
    • IsHole-Booleanresponse(True、False):リージョンが穴(Hole)であるかどうかを判定

 

POLY-BUILDツール(空間オブジェクトからポリラインやポリゴンを作成)

  • 入力ポイントの空間オブジェクトからポリラインおよびポリゴンの空間オブジェクトを作成(ソースフィールド)
    • シーケンスポリライン - ポイントのシーケンスに基づいて描かれたポリライン
    • シーケンスポリゴン - ポイントのシーケンスに基づいて描かれたポリゴン
    • Convex Hull - 描画順序にかかわらず、一組の点を含むために、凹角を持たない最小のポリゴン
  • グループ化を適用して、特定のカテゴリ変数に関連付けられたポイントの複数の空間オブジェクトを作成する(グループフィールド)
  • ポリラインとポリゴンを描画するために、ポイントを特定の順序(シーケンスフィールド)で接続
    • レコードの位置ではなく、ソート順またはシーケンスフィールドに基づく順序の順序である事に注意

 

BUFFERツール(空間オブジェクトの範囲を展開・縮小)

  • 空間オブジェクトの範囲を展開(+)または縮小(-)する
    • Expand:点、線、ポリゴン
    • Contract:多角形(ユースケース値)
  • デフォルトの設定:
    • バッファされた空間オブジェクトは出力されない
    • バッファはBufferSizeの1%に一般化される
  • バッファは、ユーザー指定の単一の値またはフィールドの値を使用して作成可能
  • サポートされる単位:マイル、キロメートル

 

空間オブジェクトの処理

 

SPATIAL PROCESSツール(2つの空間オブジェクトに空間編集を適用)

  • 同じレコードの2つの空間オブジェクトに空間編集を適用
  • ユーザーは処理に使用する空間フィールドを定義します(第1、第2空間フィールド)
  • 適用するプロセスを定義
    • 結合
    • カット
    • (逆)交点
  • 出力列 "SpatialObj_Process"には、結果の空間オブジェクトが生成される

 

SPATIAL MATCHツール(2つのデータストリームを空間的に結合)

  • Spatial Match Tool

  • 空間的関係に基づいて2つのデータストリームを空間的に結合

  • 必要な2つの入力:
    • ターゲット(T:Target)
    • ユニバース(U:Universe) - 任意入力(ファイルかもしれない)
  • マッチの決定に使用する関係を定義
  • データの発信列の名前を変更、並べ替え、選択解除するための埋め込み選択ウィンドウ
  • 得られる2つの出力:
    • 一致(M): 一致するターゲットレコードおよびユニバースレコード
    • 一致しない(U): 匹敵しないターゲットレコード

 

まとめ

という訳でAlteryx Inspire 2018:トレーニングセッション「高度な空間解析」のレポートでした。

空間分析に関するツールは多岐に渡って用途別に用意されており、それらを組み合わせて使うことで実に様々な処理を実現する事が出来ます。今回のトレーニングセッション受講、またブログにまとめた事で理解が深まりましたが、まだピンと来ていない部分もあるので実践を更に重ねてスキルを上げていきたいと思います。

Alteryxの導入なら、クラスメソッドにおまかせください

日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。

alteryx_960x400