BA データからカスタム変数を作成

本演習にかかる時間はおよそ 30 分です。

本演習では、Business Analyst オフライン データセット(以下、BA データ)を使用して、独自のカスタム変数を作成する方法を学びます。

演習用データのダウンロード

  1. BA Pro チュートリアル-カスタマイズ プロジェクトパッケージをダウンロードします。
  2. ダウンロードした「BAProチュートリアル-カスタマイズ.ppkx」を開き、[演習1] マップを開きます。

Business Analyst データ ソース が最新のデータセットに設定されていることをご確認ください。

統計データ コレクションの作成

BA データに搭載されている町丁・字等ポリゴンを使用して、統計データ コレクションを作成します。

統計データ コレクション(.sdcx)は、Business Analyst ツールで使用するために、ソース データセットへのパスと、カスタム データの設定を格納するファイルです。詳しくは、Business Analyst のカスタム データの作成をご覧ください。

  1. [解析] タブ → [ワークフロー] グループの [ビジネス解析] ボタン → [新しい統計データ コレクション] をクリックします。

  2. [統計データ コレクションの作成] ダイアログが開いたら、[入力データ] 右部にある参照ボタンをクリックし、以下のフィーチャクラスを選択します。

    <データセット配置先 or インストール先>\JPN_Esrijapan_2023\Data\Demographic Data\jpn_esrijapan_2023.gdb\Blocks_blk

  3. [統計データ コレクションの出力] で作成する統計データ コレクションの名前および保存先を確認し、そのまま [作成] をクリックします。

[SDCX の編集] ダイアログが開きます。

カスタム変数の設定

独自の計算式を用いてカスタム変数を設定します。今回は、既存の BA データには無い「5~14 歳人口」変数を作成します。

  1. [変数] タブを開き、1 つ目のフィールド「SIKINUM」行をクリックして選択状態にします。
  2. フィールドの一覧を一番下までスクロールし、Shift キーを押しながら最後のフィールド「Shape_Area」行をクリックします。
  3. すべてのフィールドが選択されていることを確認し、チェックを外します。

これにより、すべてのフィールドが未選択の状態になりました。次に、計算に利用するフィールドのみを選択します。

  1. 次に、以下のフィールドにチェックを入れて選択します。
    • D0007 (2020 人口 5-9歳)
    • D0008 (2020 人口 10-14歳)

ダイアログ右上の検索ボックスに、フィールド名もしくはエイリアスを入力することで、変数を検索できます。

  1. [計算の追加] をクリックして [変数の計算] ダイアログを開きます。
  2. 以下のように設定し、[OK] をクリックします。
    • 言語:Python
    • フィールド名:D_POP_5_14
    • エイリアス:2020 人口 5-14歳
    • 式:!D0007!+!D0008!

[フィールド] 内のフィールド名をダブルクリックすると、式に追加することができます。
また、[確認] (緑のチェック マーク) をクリックすると、作成した式に問題が無いかを確認することができます。

使用するフィールドの集計時の按分方法を設定します。また、同時にエイリアスやカテゴリーを指定することもできます。

  1. チェックを入れた 2 つの変数の割り当て方法(按分方法)を [GEOM](面積按分)に変更します。
フィールド名エイリアスカテゴリ年代精度フィールド形式サマリー タイプ加重割り当て方法種類
D00072020 人口 5-9歳既定0Count合計なしGEOMInteger
D00082020 人口 10-14歳既定0Count合計なしGEOMInteger

作成したカスタム変数は、フィールド一覧の一番下に追加されます。

日本でカスタム変数を作成する際に設定できる割り当て方法は、以下の通りです。

割り当て方法説明
None按分せずに、少しでも重なる場合は 100% 割り当て
GEOM重なる面積比率に応じて割り当て (面積按分)
2015 人口 総数 (EJ)2015 年の基本単位区の人口総数を重みづけに使用
2015 人口 男 総数 (EJ)2015 年の基本単位区の男性総数を重みづけに使用
2015 人口 女 総数 (EJ)2015 年の基本単位区の女性総数を重みづけに使用
2015 世帯数 総数 (EJ)2015 年の基本単位区の世帯総数を重みづけに使用

カスタム変数を使用する際のタイトルやアイコンなどを設定します。

  1. [プロパティ] タブを開き、[タイトル] に「BAデータカスタム変数」と入力します。また、タグやアイコンを任意に設定します。
  2. [OK] をクリックしてダイアログを閉じます。

最後に、作成した統計データ コレクションの名前を変更します。

  1. [カタログ] ウィンドウ → [Business Analyst] → [統計データ コレクション] を展開します。
  2. Blocks_blk.sdcx 上で右クリックし、[名前の変更] をクリックして、「BAデータカスタム変数.sdcx」に名前を変更します。

作成した統計データ コレクションには、デフォルトでデータ ソースとして選択したフィーチャクラスの名前が付けられます。

[SDCX の編集] ダイアログ上の [パフォーマンス インデックス] の工具マークをクリックすると、集計パフォーマンスを向上させることができます。ただし、日本全国をカバーするレイヤーに対するインデックスのため、構築完了までに長時間処理 (30 分 ~1 時間程度) かかることにご注意ください。

商圏にカスタム変数を集計する

商圏に対してカスタム変数として作成した「2020 人口 5-14歳」を集計します。

  1. ArcGIS Pro 上部の [コマンド検索] で「情報付加」と入力します。
  2. 検索結果の中の [レイヤーの情報付加 (Enrich Layer)] ツールをクリックして開きます。
  3. [入力フィーチャ] 横の [鉛筆] アイコンをクリックし、[ポリゴン] を選択します。
  4. マップ上の任意の範囲にポリゴンを作成して、ダブルクリックで完成させます。
  5. [出力フィーチャクラス] に「任意ポリゴン_カスタム変数付与」と入力します。
  6. [変数] で [+] ボタンをクリックしてデータ ブラウザーを開き、[カスタム データ] ノード → [BAデータカスタム変数] をクリックして開きます。
  7. [既定] カテゴリにチェックを入れて格納されているすべての変数を選択し、[OK] をクリックしてデータ ブラウザーを閉じます。
  8. [実行] をクリックしてツールを実行します。

統計データ コレクションのインデックスが未構築、もしくは最新でない場合は、以下のような警告が表示されます。

この状態でも集計自体は正常に行えますが、[SDCX の編集] ダイアログからインデックスの構築を行うと集計パフォーマンスが向上します。ただし、インデックス構築には長時間かかるのでご注意ください。

ツール実行が完了すると、[コンテンツ] ウィンドウおよびマップに結果レイヤーが追加されます。集計結果を確認します。

  1. [コンテンツ] ウィンドウ上の「任意ポリゴン_カスタム変数付与」レイヤーを選択し、Ctrl + T で属性テーブルを開き、右にスクロールします。

「2020 人口 5-14歳」フィールド値が、以下の 2 つのフィールドの合算値であり、カスタム変数が正しく集計されていることが分かります。

  • 2020 人口 5-9歳
  • 2020 人口 10-14歳
  1. [プロジェクト] タブ → [保存] を選択し、プロジェクトを保存します。

まとめ

この演習では、BA データを使用して統計データ コレクションを作成しました。さらに、カスタムの計算式を設定することで、既存のデータには無いカスタム変数を作成し、その変数を任意の商圏に集計しました。 また、以下のツールの操作を学びました。

  • [統計データ コレクションの作成] ツール