エリア内での集計 (Summarize Within) (GeoAnalytics)

概要

ポリゴン レイヤーを別のレイヤーに重ねて、各ポリゴン内のポイント数、ラインの長さ、またはポリゴンの面積を集計し、各ポリゴン内のフィーチャに関して属性フィールドの統計情報を計算します。

次に、[エリア内での集計 (Summarize Within)] を使用するシナリオの例を示します。

  • 集水域境界線と、土地利用タイプ別土地利用境界線を基にして、各集水域の土地利用タイプの総面積を計算する。
  • 郡の土地区画と市の境界線を基にして、それぞれの市の境界線内にある空き地の平均値を求める。
  • 郡と道路を基にして、各郡内の道路タイプ別に道路の距離を集計する。

エリア内での集計 (Summarize Within)
集計の例: ポリゴン内のポイント (1 行目)、ポリゴン内のライン (2 行目)、ポリゴン内のポリゴン (3 行目)

使用法

  • 簡単に言うと、[エリア内での集計 (Summarize Within)] の処理は、2 つのレイヤー、入力ポリゴン、および入力集計フィーチャを受け取って、それらを積み重ねることです。各レイヤーを積み重ねてから、そのスタックを見下ろして、入力ポリゴン内にある入力集計フィーチャの数をカウントできます。合計値、平均値、最小値、最大値など、入力集計フィーチャの属性についてのシンプルな統計情報を計算することもできます。

  • [エリア内での集計 (Summarize Within)] を使用して、標準の統計情報と地理空間的に加重した統計情報を計算できます。標準の統計情報は、加重なしで統計値を集計したものです。加重統計情報では、ポリゴン内のラインの割合、またはポリゴン内のポリゴンの割合を地理空間的に加重した値を使用して、値を計算します。加重統計情報は、ポリゴン内のポイントには適用されません。

  • 以下の表にあるオプションを使用して、各ポリゴン内の集計対象レイヤーの長さと面積を計算できます。オプションは、集計対象レイヤーのジオメトリに基づきます。

    入力フィーチャ説明オプション

    ポイント

    各ポリゴン内の集計ポイントの数。

    なし

    Lines

    各ポリゴン内の集計ラインの長さ。

    • マイル
    • ヤード
    • フィート
    • キロメートル
    • メートル

    面積

    各ポリゴン内の集計ポリゴンの面積。

    • 平方マイル
    • 平方ヤード
    • 平方フィート
    • 平方キロメートル
    • 平方メートル
    • ヘクタール
    • エーカー
  • 標準統計情報の計算は、必要に応じて実行できます。ラインとエリアでは、すべての加重統計情報が算出されます。標準集計フィールド統計情報と加重集計フィールド統計情報はどちらも、[集計ポリゴン] レイヤーと交差している [集計対象レイヤー] 内のフィーチャのデータに適用されます。加重集計フィールド統計情報に、[集計ポリゴン][集計対象レイヤー] 内の各フィーチャと交差している割合に基づく重みが乗算されます。

  • 標準統計情報には、8 つのオプションがあります (個数、合計、平均、最小、最大、範囲、標準偏差、および分散)。文字列統計情報には、2 つのオプションがあります (個数および任意)。加重統計情報には、集計対象レイヤー内の数値フィールドに対して算出される 6 つのオプションがあります (個数、合計、平均、最小、最大、および範囲)。

  • 文字列データの場合は、加重統計情報が算出されません。[フィールド] および [統計情報] が指定されるたびに、行がこのツールのウィンドウに追加されるため、複数の統計情報を計算することができます。集計結果を結果レイヤーのテーブルまたはポップアップに表示できます。デフォルトでは、[集計ポリゴン] と交差しているフィーチャの個数が常に算出されます。

  • ArcGIS Enterprise10.6.1 以降では、[フィールドでグループ化] パラメーターを使用してグループを計算できます。これにより、集計されたポリゴン レイヤーに加えて、テーブル出力が作成されます。

  • [フィールドでグループ化] 値が選択されると、[最少頻値属性および最頻値属性の追加] パラメーターと [グループの割合の追加] パラメーターが使用可能になります。最少頻値と最頻値は、[フィールドでグループ化] に含まれる最も優位性の低い値と最も優位性の高い値であり、優位性はそれぞれの値のポイント数、全長、または合計面積で決定されます。

  • [最少頻値属性および最頻値属性の追加] パラメーターをオンにすると、2 つのフィールドが結果レイヤーに追加されます。これらのフィールドには、各結果フィーチャの最少頻値と最頻値である [フィールドでグループ化] パラメーターの値が表示されます。

  • [グループの割合の追加] パラメーターは、[最少頻値属性および最頻値属性の追加] を選択したときのみ使用可能になります。[グループの割合の追加] パラメーターをオンにすると、2 つのフィールドが結果レイヤーに追加され、各フィーチャの最少頻値と最頻値に属しているポイント数、全長、または合計面積のパーセンテージが表示されます。パーセンテージのフィールドは結果テーブルにも追加され、各フィーチャの [フィールドでグループ化] パラメーターのすべての値に属しているポイント数、全長、または合計面積のパーセンテージが表示されます。

  • 加重統計情報では、ライン レイヤーの集計に、[集計ポリゴン] 内にあるライン フィーチャの割合のみを使用します。標準 (非加重) 統計情報では、[集計ポリゴン] と交差しているラインが集計されます。加重統計情報でラインを集計する場合は、数や量 (比率や指数ではなく) を使用して、比率計算が解析で論理的な意味を持つようにします。

  • 集計対象エリア レイヤーの加重統計情報は、[集計対象レイヤー] 内にある [集計ポリゴン] フィーチャの割合に基づいています。エリアを集計する場合は、数や量 (比率や指数ではなく) を使用して、比率計算が解析で論理的な意味を持つようにします。

  • 出力フィーチャ レイヤーは、常にポリゴン レイヤーです。集計対象レイヤーと交差するポリゴンのみが返されます。その他のポリゴンは、結果レイヤーから完全に削除されます。

    ポイント フィーチャを含むポリゴンが返される
    入力ポイントおよびポリゴン フィーチャ (左) と、生成されたエリア フィーチャ (右) を示します。

  • 出力ポリゴン フィーチャには、次のフィールドが含まれています。

    フィールド名説明
    count

    各ポリゴン レイヤーと交差する集計されたフィーチャの個数。

    sum_length_<linearunit>、または sum_area_<areaunit>

    ポリゴン内のラインの全長、または各ポリゴン内の集計ポリゴンの合計面積。これらの値は、[シェープ属性の集計値を追加] を選択したときに、指定した単位で返されます。

    statistic_<fieldname>

    指定した統計情報ごとに、<statistic>_<fieldname> という形式の名前の属性フィールドが作成されます。たとえば、フィールド id の最大値と標準偏差は、MAX_id および SD_id です。

    pstatistic_<fieldname>

    指定した加重統計情報ごとに、p<statistic>_<fieldname> という形式の名前の属性フィールドが作成されます。たとえば、フィールド id の加重最大値は pMAX_id です。

    minority_<fieldname>

    この値は、グループ化テーブルを作成し、[最少頻値属性および最頻値属性の追加] を選択したときに返されます。これは、各ポリゴン内の指定したフィールドの最少頻値を表します。たとえば、ポリゴン内に 5 つのポイントがあり、color というフィールドの値が赤、青、青、緑、緑であるとします。color フィールドでグループを作成した場合、minority_color フィールドの値は赤になります。

    majority_<fieldname>

    この値は、グループ化テーブルを作成し、[最少頻値属性および最頻値属性の追加] を選択したときに返されます。これは、各ポリゴン内の指定したフィールドの最頻値を表します。たとえば、ポリゴン内に 5 つのポイントがあり、color というフィールドの値が赤、青、青、緑、緑であるとします。color フィールドでグループを作成した場合、minority_color フィールドの値は青と緑になります。

    minority_<fieldname>_percent

    この値は、グループ化テーブルを作成し、[グループの割合の追加] を選択したときに返されます。これは、各ポリゴン内の指定したフィールドにおける個数の割合の最少頻値を表します。たとえば、ポリゴン内に 5 つのポイントがあり、color というフィールドの値が赤、青、青、緑、緑であるとします。color フィールドでグループを作成した場合、minority_color_percent フィールドの値は 20 になります (1/5 として計算)。

    majority_<fieldname>_percent

    この値は、グループ化テーブルを作成し、[グループの割合の追加] を選択したときに返されます。これは、各ポリゴン内の指定したフィールドにおける個数の割合の最頻値を表します。たとえば、ポリゴン内に 5 つのポイントがあり、color というフィールドの値が赤、青、青、緑、緑であるとします。color フィールドでグループを作成した場合、majority_color_percent フィールドの値は 40 になります (2/5 として計算)。

    join_id

    この値は、グループ化テーブルを作成したときに返されます。これは、フィーチャをグループ化テーブルにリンクする ID です。すべての join_id フィールドは、グループ化テーブルの 1 つまたは複数の行に対応しています。

    出力グループ化テーブルには、次のフィールドが含まれています。

    フィールド名説明

    join_id

    これは、フィーチャをポリゴン レイヤーにリンクする ID です。各ポリゴンには、すべてのグループ化の値を表す 1 つ以上のフィーチャがあり、それらは同じ ID を持ちます。たとえば、ポリゴン内に 5 つのポイントがあり、color というフィールドの値が赤、青、青、緑、緑であるとします。グループ化テーブルには、そのポリゴン (同じ結合 ID) を表す 3 つの行があり、それぞれが赤、青、緑の色に対応します。

    count

    結合したポリゴン内の指定したグループの数。たとえば、選択したポリゴンで赤は 1 です。

    <statistic>_<fieldname>

    各グループに対して計算される指定した統計量。

    p<statistic>_<fieldname>

    各グループに対して計算される指定した加重統計量。

    percentcount

    各グループがポリゴン内の合計数に寄与するパーセンテージ。上記の例を使用すると、赤は 1/5 = 20、青は 2/5 = 40、緑は 2/5 = 20 になります。

  • 次のヒントを 1 つ以上使用することで、[エリア内での集計 (Summarize Within)] ツールのパフォーマンスを向上させることができます。

    • 対象データのみが解析されるように、範囲環境を設定します。
    • ビンを使用している場合、大きいビンは、小さいビンよりパフォーマンスが高くなります。使用すべきサイズがわからない場合は、大きいビンのプロトタイプから開始します。
    • 解析が実行されている場所に対してローカルなデータを使用します。

  • ジオプロセシング ツールは、ArcGIS GeoAnalytics Server を活用しています。解析は GeoAnalytics Server で実行され、結果が ArcGIS Enterprise のコンテンツに保存されます。

  • GeoAnalytics Server ツールを実行する場合、解析は GeoAnalytics Server で実行されます。最適なパフォーマンスを得るためには、ArcGIS Enterprise ポータルでホストされているフィーチャ レイヤーかビッグ データ ファイル共有を通じて、GeoAnalytics Server にデータを提供する必要があります。GeoAnalytics Server のローカルにないデータは、解析が開始する前に GeoAnalytics Server に移動されます。つまり、ツールを実行する時間が長くなり、場合によっては ArcGIS Pro から GeoAnalytics Server にデータを移動できないこともあります。エラーの閾値はネットワークの速度や、データのサイズや複雑さに左右されます。したがって、データを必ず共有するか、ビッグ データ ファイル共有を作成することをお勧めします。

    データをポータルで共有する方法の詳細

    ArcGIS Server Manager を使用してビッグ データ ファイル共有を作成する方法の詳細

  • ArcGIS Pro の [標準フィーチャ解析] ツールボックスの [エリア内での集計 (Summarize Within)] ツールを使用して、類似分析を実行することもできます。

構文

arcpy.geoanalytics.SummarizeWithin(summarized_layer, output_name, polygon_or_bin, bin_type, {bin_size}, {summary_polygons}, sum_shape, {shape_units}, {standard_summary_fields}, {weighted_summary_fields}, {data_store}, {group_by_field}, {add_minority_majority}, {add_percentages})
パラメーター説明データ タイプ
summarized_layer

ポリゴンまたはビンごとに集計するポイント フィーチャ、ライン フィーチャ、またはポリゴン フィーチャ。

Feature Set
output_name

交差するジオメトリおよび属性を含む出力ポリゴン フィーチャ サービスの名前。

String
polygon_or_bin

summarized_layer をポリゴン別またはビン別のいずれで集計するかを指定します。

  • POLYGON集計レイヤーは、ポリゴン データセットに集約されます。
  • BIN集計レイヤーは、四角形または六角形のビンに集約されます。
String
bin_type

フィーチャを集約するために生成するビンの形状を指定します。

  • SQUAREbin_size は、四角形の高さを表します。これがデフォルトです。
  • HEXAGONbin_size は、2 本の平行な辺の距離を表します。
String
bin_size
(オプション)

入力フィーチャを集約するビンのサイズと単位を表す距離間隔。

Linear Unit
summary_polygons
(オプション)

入力集計レイヤー内のフィーチャの集計に使用するポリゴン。

Feature Set
sum_shape

集計レイヤー (ポリゴンまたはビン) 内にあるラインの長さ、またはポリゴンの面積を計算するかどうかを指定します。集計形状と交差するポイント、ライン、およびポリゴンの数は常に含まれます。

  • ADD_SUMMARYシェープ属性の集計値が計算されます。これがデフォルトです。
  • NO_SUMMARYシェープ属性の集計値が計算されません。
Boolean
shape_units
(オプション)

シェープ属性の集計で使用する単位を指定します。入力の summarized_layer がポイントである場合は、各入力ポリゴン内のポイント数が加算されるだけなので、集計エリアの単位は不要です。入力集計フィーチャがラインである場合は、距離単位を指定します。入力集計フィーチャがポリゴンである場合は、面積単位を指定します。

  • METERS形状の単位はメートルです。
  • KILOMETERS形状の単位はキロメートルです。
  • FEET形状の単位はフィートです。
  • YARDS形状の単位はヤードです。
  • MILES形状の単位はマイルです。
  • ACRES形状の単位はエーカーです。
  • HECTARES形状の単位はヘクタールです。
  • SQUARE_METERS形状の単位は平方メートルです。
  • SQUARE_KILOMETERS形状の単位は平方キロメートルです。
  • SQUARE_FEET形状の単位は平方フィートです。
  • SQUARE_YARDS形状の単位は平方ヤードです。
  • SQUARE_MILES形状の単位は平方マイルです。
String
standard_summary_fields
[standard_summary_fields,...]
(オプション)

指定されたフィールドに関して計算される統計情報。

  • COUNT - NULL 値でない値の数。数値フィールドまたは文字列に使用できます。[null, 0, 2] の個数は 2 です。
  • SUM - フィールド内の数値の合計。[null, null, 3] の合計は 3 です。
  • MEAN - 数値の平均。[0,2, null] の平均は 1 です。
  • MIN - 数値フィールドの最小値。[0, 2, null] の最小値は 0 です。
  • MAX - 数値フィールドの最大値。[0, 2, null] の最大値は 2 です。
  • STDDEV - 数値フィールドの標準偏差。[1] の標準偏差は null です。[null, 1,1,1] の標準偏差は null です。
  • VAR - トラッキング内の数値フィールドの分散。[1] の分散は null です。[null, 1,1,1] の分散は null です。
  • RANGE - 数値フィールドの範囲。これは、最大値から最小値を減算して計算されます。[0, null, 1] の範囲は 1 です。[null, 4] の範囲は 0 です。
  • ANY - 文字列型のフィールドのサンプル文字列。

Value Table
weighted_summary_fields
[weighted_summary_fields,...]
(オプション)

指定されたフィールドに関して計算される加重統計情報を指定します。

  • COUNTポリゴン内の集計レイヤーの割合が乗算され、各フィールドの個数が計算されます。
  • SUM各フィールドの加重合計が計算されます。適用される加重は、ポリゴン内の集計レイヤーの割合です。
  • MEAN各フィールドの加重平均が計算されます。適用される加重は、ポリゴン内の集計レイヤーの割合です。
  • MIN各フィールドの加重最小が計算されます。適用される加重は、ポリゴン内の集計レイヤーの割合です。
  • MAX各フィールドの最大値が計算されます。適用される加重は、ポリゴン内の集計レイヤーの割合です。
  • RANGEMINMAX の差が計算されます。
Value Table
data_store
(オプション)

出力の保存先の ArcGIS Data Store を指定します。デフォルトは、SPATIOTEMPORAL_DATA_STORE です。ビッグ データ ストアに格納されたすべての結果は、WGS84 で保存されます。リレーショナル データ ストアに格納された結果は、それらの座標系を維持します。

  • SPATIOTEMPORAL_DATA_STORE出力がビッグ データ ストアに格納されます。これがデフォルトです。
  • RELATIONAL_DATA_STORE出力がリレーショナル データ ストアに格納されます。
String
group_by_field
(オプション)

一意の属性値ごとに統計情報を個別に計算するために使用する入力集計フィーチャのフィールド。たとえば、入力集計フィーチャに危険物を保管している会社の位置ポイントを含み、フィールドの 1 つが、保管されている危険物のタイプを記述したコードを含む HazardClass であるとします。HazardClass の一意の値のそれぞれについて集計を計算するには、そのフィールドをグループ化フィールドとして使用します。

Field
add_minority_majority
(オプション)

各境界内のグループ フィールドごとに最少頻値 (最も支配的でない) 属性値または最頻値 (最も支配的) 属性値が追加されるかどうかを指定します。存在する場合、Majority_ と Minority_ の接頭辞を持つ 2 つの新しいフィールドが出力レイヤーに追加されます。このパラメーターは、group_by_field パラメーターが使用されている場合のみ適用されます。

  • NO_MIN_MAJ最少頻値フィールドおよび最頻値フィールドを追加しません。これがデフォルトです。
  • ADD_MIN_MAJ最少頻値フィールドおよび最頻値フィールドを追加します。
Boolean
add_percentages
(オプション)

割合フィールドを追加するかどうかを指定します。存在する場合、各入力ポリゴンについて、一意の各グループ値のパーセンテージが計算されます。このパラメーターは、group_by_field パラメーターと add_minority_majority パラメーターが使用されている場合のみ適用されます。

  • NO_PERCENT割合フィールドを追加しません。これがデフォルトです。
  • ADD_PERCENT割合フィールドを追加します。
Boolean

派生した出力

名前説明データ タイプ
output

各ポリゴン内で集計されたポイントの数、ラインの長さ、またはポリゴンの面積。

フィーチャ セット
group_by_summary

[集計でグループ化] を指定すると、ツールは、一意のグループごとに計算された統計情報を含むテーブルを出力します。

レコード セット

コードのサンプル

SummarizeWithin (エリア内での集計) の例 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、SummarizeWithinツールの使用方法を示しています。

# Name: SummarizeWithin.py
# Description: Summarize river polylines by counties.
#			
# Requirements: ArcGIS GeoAnalytics Server
# Import system modules
import arcpy
# Set local variables
summarizedLayer = "https://MyGeoAnalyticsMachine.domain.com/geoanalytics/rest/services/DataStoreCatalogs/bigDataFileShares_Water/BigDataCatalogServer/Rivers"
summaryPolys = "https://MyGeoAnalyticsMachine.domain.com/geoanalytics/rest/services/DataStoreCatalogs/bigDataFileShares_Boundaries/BigDataCatalogServer/Counties"
summaryStatistics = ["Width", "MEAN"]
weighedSummaryStatistics = ["DOC", "SUM"]
outFS = 'SummarizedRivers'
dataStore = "SPATIOTEMPORAL_DATA_STORE"
# Execute SummarizeWithin
arcpy.geoanalytics.SummarizeWithin(summarizedLayer, outFS, "POLYGON", None, 
                                   None, summaryPolys,"ADD_SUMMARY", 
                                   "KILOMETERS", summaryStatistics, 
                                   weightedSummaryStatistics, dataStore)

環境

出力座標系

解析で使用される座標系。このパラメーターで指定されない限り、入力の座標系で解析が行われます。GeoAnalytics Tools の場合、最終結果は WGS84 のビッグ データ ストアに保存されます。

ライセンス情報

  • Basic: 次のものが必要 ArcGIS GeoAnalytics Server
  • Standard: 次のものが必要 ArcGIS GeoAnalytics Server
  • Advanced: 次のものが必要 ArcGIS GeoAnalytics Server

関連トピック