ネットワーク空間加重の生成 (Generate Network Spatial Weights) (空間統計)

サマリー

ネットワーク データセットを使用して空間加重マトリックス ファイル (.swm) を作成し、基礎となるネットワーク構造における空間リレーションシップを定義します。

ネットワーク空間加重の生成の詳細

ネットワーク空間加重の生成ツールの図

使用法

  • ネットワーク データセットは、次のいずれかのソースから取得できます。

    • ローカル ドライブまたはネットワークに保存されたネットワーク データセット。 組織が独自の道路ネットワーク データセットを保持してる場合、すでにアクセスを持っているかもしれません。
    • ArcGIS Online または ArcGIS Enterprise でホストされている物流およびルート検索サービスArcGIS Online を使用して解析する場合は、その解析で、ArcGIS Online クラウドに格納されている高品質な世界規模のネットワーク データセットが参照され、ArcGIS Online クレジットが消費されます。
    • ArcGIS StreetMap Premium から提供される構成済みネットワーク データセット。 これらのネットワーク データセットは SDC 形式で、北米、中南米、ヨーロッパ、中東、アフリカ、日本、オーストラリア、ニュージーランドが含まれます。

  • このツールは、出力として空間加重マトリックス ファイル (*.swm) を作成します。 [空間統計] および [時空間パターン マイニング] ツールボックスのさまざまなツールには、このファイルを使用してフィーチャの空間リレーションシップを定義できる [空間リレーションシップのコンセプト] パラメーターが含まれています。 ネットワーク データソースに空間加重マトリックスを使用すると、距離、移動時間、および移動コストによる空間リレーションシップを定義できます。

  • [入力フィーチャクラス] パラメーター値はポイントである必要があります。 このツールでは、ポリゴンおよびポリラインはサポートされていません。

  • [一意の ID フィールド] パラメーターを使用して、このツールの出力を入力フィーチャに関連付けます。 一意の ID 値を含むフィールドが存在しない場合は、新たな整数フィールドをフィーチャクラス テーブルに追加し、FID/OBJECTID フィールドに等しいフィールド値を計算することによって、作成できます。 FID および OBJECTID フィールドの値は、フィーチャクラスをコピーまたは編集すると変更される場合があるため、これらのフィールド値を [一意の ID フィールド] パラメーターで直接使用することはできません。

  • 各フィーチャに関連付けられている近傍数は、[最大近傍数] パラメーターと 3 つのインピーダンス カットオフ パラメーターによって決定されます。 このツールは、最大近傍数を超えたり、インピーダンスがいずれかのカットオフ値を超過するフィーチャを使用したりせずに、入力フィーチャに最も近いフィーチャをできるだけ多く使用します。 インピーダンスは、距離、移動時間、またはコストによって定義できます。 使用できるインピーダンスのタイプは、ネットワーク データ ソースのプロパティおよび [移動モード] パラメーターの値によって異なります。

  • ネットワーク データセットに階層が含まれている場合、階層を使用して空間リレーションシップが定義されます。 階層では、ネットワーク エッジが幹線道路、一般道路、生活道路に分類されます。 ネットワークの階層を使用してフィーチャ間の空間関係を作成するときには、一般道路よりも幹線道路での移動が優先され、生活道路よりも一般道路での移動が優先されます。

  • [空間リレーションシップのコンセプト] パラメーターに [逆] オプションが指定されている場合、[行の標準化] パラメーターをオンにして行の標準化を実行することをお勧めします。 行の標準化が実行されていない場合、距離の単位が異なると空間加重も異なります。

  • すべての入力フィーチャは、解析前にネットワーク データセットの空間参照に投影され、ネットワーク空間加重マトリックス ファイルがこの空間参照に構築されます。 この空間参照で以降のすべての解析を実行して、空間リレーションシップを適切に表現することをお勧めします。

  • 入力フィーチャクラスは 32 ビットの ObjectID フィールド値を持つ必要があります。 64 ビットの値はサポートされていません。

パラメーター

ラベル説明データ タイプ
入力フィーチャクラス

ネットワーク上の位置を表すポイント フィーチャクラス。 各フィーチャに対して近傍と加重が計算され、出力空間加重マトリックス ファイルに保存されます。

Feature Class
一意の ID フィールド

入力フィーチャクラスの各フィーチャの個別値を含む整数フィールドです。 一意の ID 値を含むフィールドが存在しない場合は、整数フィールドをフィーチャクラス テーブルに追加し、FID/OBJECTID フィールドに等しいフィールド値を計算することによって、作成できます。

Field
出力空間加重マトリックス ファイル

各入力フィーチャの近傍と加重を格納する出力ネットワーク空間加重マトリックス ファイル (.swm)。

File
入力ネットワーク データ ソース

各入力フィーチャの近傍の検索に使用されるネットワーク データセット。 ネットワーク データセットは通常、道路ネットワークを表しますが、鉄道や歩道など、他の種類の交通ネットワークを表すこともできます。 ネットワーク データセットには、距離、移動時間、またはコストに関連する属性が 1 つ以上含まれている必要があります。

Network Data Source
移動モード

解析対象の交通モード。 移動モードには、歩行者、車、トラック、その他の輸送手段がネットワークをどのように移動するかが定義されており、移動規制や U ターン ポリシーなどのネットワーク設定のコレクションを表します。

String
インピーダンス距離カットオフ

フィーチャの近傍と見なされる最大インピーダンス距離。 距離がこの値よりも遠いフィーチャは、近傍として使用されません。 デフォルトでは、距離カットオフは使用されません。

Linear Unit
インピーダンス時間カットオフ
(オプション)

フィーチャの近傍と見なされる最大インピーダンス移動時間。 移動時間がこの値より長いフィーチャは、近傍として使用されません。 デフォルトでは、時間カットオフは使用されません。

Time Unit
インピーダンス コスト カットオフ
(オプション)

フィーチャの近傍と見なされる最大インピーダンス コスト。 移動コストがこの値よりも大きいフィーチャは、近傍として使用されません。 デフォルトでは、コスト カットオフは使用されません。

Double
最大近傍数
(オプション)

各フィーチャの最大近傍数を表す整数。 各フィーチャに使用される実際の近傍数は、インピーダンス カットオフにより少なくなる場合があります。

Long
時刻
(オプション)

解析では、時刻による交通状況が考慮されます。 交通状況は、指定された時間に移動できる距離に影響を与える可能性があります。 日付または時刻が指定されていない場合、解析は交通の影響を考慮しません。

特定の日付を使用する代わりに、次の日付を使用して曜日を指定することができます。

  • 本日 - 1899/12/30
  • 日曜日 - 1899/12/31
  • 月曜日 - 1900/1/1
  • 火曜日 - 1900/1/2
  • 水曜日 - 1900/1/3
  • 木曜日 - 1900/1/4
  • 金曜日 - 1900/1/5
  • 土曜日 - 1900/1/6

たとえば、移動を火曜日の 5:00 PM に開始するよう指定するには、パラメーター値を 1900/1/2 5:00 PM に指定します。

Date
タイム ゾーン
(オプション)

[時刻] パラメーターのタイム ゾーンを指定します。

  • ロケーションのローカル タイム[入力フィーチャクラス] が含まれているタイム ゾーンが使用されます。 これがデフォルトです。
  • UTC協定世界時 (UTC) が使用されます。
String
バリア
(オプション)

ブロックされている交差点、道路の閉鎖、事故現場、ネットワーク沿いで移動がブロックされているその他の場所を表すフィーチャ。

Feature Layer
検索許容値
(オプション)

各入力フィーチャをネットワーク上の位置に割り当てる際に使用される最大距離。 入力ポイントのいずれかがネットワークのラインに正確に一致しない場合、それらのポイントは解析用にネットワーク上の最も近い位置に割り当てられます。 ただし、フィーチャがネットワーク上の任意の位置からの検索許容値よりも遠い場合、そのフィーチャはネットワークに割り当てられず、解析には含まれません。

Linear Unit
空間リレーションシップのコンセプト
(オプション)

各近傍に加重を定義する方法を指定します。

  • 距離、時間、またはコストが大きいフィーチャほど、近いフィーチャよりも加重が小さくなります。 加重は指数の逆数で減少します。
  • 固定すべての近傍に等しい加重が付与されます。 これがデフォルトです。
String
指数
(オプション)

[空間リレーションシップのコンセプト] パラメーターに [逆] オプションが指定されている場合に使用される指数。 各近傍に割り当てられた加重は、距離、時間、またはコストの逆数を指数で累乗して計算されます。 デフォルト値は 1 で、値は 0.01 ~ 4 である必要があります。 指数が増加するにつれて、加重は急激に減少します。

Double
行の標準化
(オプション)

行の標準化を適用するかどうかを指定します。 行の標準化が推奨されるのは、サンプリングの設計や指定された集約方式によって入力ポイントの位置が偏る可能性があるときです。 距離、時間、またはコストの逆数に基づいて近傍に加重を付与する場合も、行を標準化することをお勧めします。

  • オン - 空間加重は行で標準化されます。 各加重は行の合計で除されます。 これがデフォルトです。
  • オフ - 空間加重の標準化は適用されません。
Boolean

arcpy.stats.GenerateNetworkSWM(Input_Feature_Class, Unique_ID_Field, Output_Spatial_Weights_Matrix_File, Input_Network_Data_Source, Travel_Mode, Impedance_Distance_Cutoff, {Impedance_Temporal_Cutoff}, {Impedance_Cost_Cutoff}, {Maximum_Number_of_Neighbors}, {Time_of_Day}, {Time_Zone}, {Barriers}, {Search_Tolerance}, {Conceptualization_of_Spatial_Relationships}, {Exponent}, {Row_Standardization})
名前説明データ タイプ
Input_Feature_Class

ネットワーク上の位置を表すポイント フィーチャクラス。 各フィーチャに対して近傍と加重が計算され、出力空間加重マトリックス ファイルに保存されます。

Feature Class
Unique_ID_Field

入力フィーチャクラスの各フィーチャの個別値を含む整数フィールドです。 一意の ID 値を含むフィールドが存在しない場合は、整数フィールドをフィーチャクラス テーブルに追加し、FID/OBJECTID フィールドに等しいフィールド値を計算することによって、作成できます。

Field
Output_Spatial_Weights_Matrix_File

各入力フィーチャの近傍と加重を格納する出力ネットワーク空間加重マトリックス ファイル (.swm)。

File
Input_Network_Data_Source

各入力フィーチャの近傍の検索に使用されるネットワーク データセット。 ネットワーク データセットは通常、道路ネットワークを表しますが、鉄道や歩道など、他の種類の交通ネットワークを表すこともできます。 ネットワーク データセットには、距離、移動時間、またはコストに関連する属性が 1 つ以上含まれている必要があります。

Network Data Source
Travel_Mode

解析対象の交通モード。 移動モードには、歩行者、車、トラック、その他の輸送手段がネットワークをどのように移動するかが定義されており、移動規制や U ターン ポリシーなどのネットワーク設定のコレクションを表します。

arcpy.na.TravelMode オブジェクトおよび移動モードの有効な JSON 表現を含む文字列もパラメーターの入力として使用できます。

String
Impedance_Distance_Cutoff

フィーチャの近傍と見なされる最大インピーダンス距離。 距離がこの値よりも遠いフィーチャは、近傍として使用されません。 デフォルトでは、距離カットオフは使用されません。

Linear Unit
Impedance_Temporal_Cutoff
(オプション)

フィーチャの近傍と見なされる最大インピーダンス移動時間。 移動時間がこの値より長いフィーチャは、近傍として使用されません。 デフォルトでは、時間カットオフは使用されません。

Time Unit
Impedance_Cost_Cutoff
(オプション)

フィーチャの近傍と見なされる最大インピーダンス コスト。 移動コストがこの値よりも大きいフィーチャは、近傍として使用されません。 デフォルトでは、コスト カットオフは使用されません。

Double
Maximum_Number_of_Neighbors
(オプション)

各フィーチャの最大近傍数を表す整数。 各フィーチャに使用される実際の近傍数は、インピーダンス カットオフにより少なくなる場合があります。

Long
Time_of_Day
(オプション)

解析では、時刻による交通状況が考慮されます。 交通状況は、指定された時間に移動できる距離に影響を与える可能性があります。 日付または時刻が指定されていない場合、解析は交通の影響を考慮しません。

特定の日付を使用する代わりに、次の日付を使用して曜日を指定することができます。

  • 本日 - 1899/12/30
  • 日曜日 - 1899/12/31
  • 月曜日 - 1900/1/1
  • 火曜日 - 1900/1/2
  • 水曜日 - 1900/1/3
  • 木曜日 - 1900/1/4
  • 金曜日 - 1900/1/5
  • 土曜日 - 1900/1/6

たとえば、移動を火曜日の 5:00 PM に開始するよう指定するには、パラメーター値を 1900/1/2 5:00 PM に指定します。

Date
Time_Zone
(オプション)

Time_of_Day パラメーターのタイム ゾーンを指定します。

  • LOCAL_TIME_AT_LOCATIONSInput_Feature_Class が含まれているタイム ゾーンが使用されます。 これがデフォルトです。
  • UTC協定世界時 (UTC) が使用されます。
String
Barriers
(オプション)

ブロックされている交差点、道路の閉鎖、事故現場、ネットワーク沿いで移動がブロックされているその他の場所を表すフィーチャ。

Feature Layer
Search_Tolerance
(オプション)

各入力フィーチャをネットワーク上の位置に割り当てる際に使用される最大距離。 入力ポイントのいずれかがネットワークのラインに正確に一致しない場合、それらのポイントは解析用にネットワーク上の最も近い位置に割り当てられます。 ただし、フィーチャがネットワーク上の任意の位置からの検索許容値よりも遠い場合、そのフィーチャはネットワークに割り当てられず、解析には含まれません。

Linear Unit
Conceptualization_of_Spatial_Relationships
(オプション)

各近傍に加重を定義する方法を指定します。

  • INVERSE距離、時間、またはコストが大きいフィーチャほど、近いフィーチャよりも加重が小さくなります。 加重は指数の逆数で減少します。
  • FIXEDすべての近傍に等しい加重が付与されます。 これがデフォルトです。
String
Exponent
(オプション)

INVERSE オプションが Conceptualization_of_Spatial_Relationships パラメーターに指定されている場合に使用される指数。 各近傍に割り当てられた加重は、距離、時間、またはコストの逆数を指数で累乗して計算されます。 デフォルト値は 1 で、値は 0.01 ~ 4 である必要があります。 指数が増加するにつれて、加重は急激に減少します。

Double
Row_Standardization
(オプション)

行の標準化を適用するかどうかを指定します。 行の標準化が推奨されるのは、サンプリングの設計や指定された集約方式によって入力ポイントの位置が偏る可能性があるときです。 距離、時間、またはコストの逆数に基づいて近傍に加重を付与する場合も、行を標準化することをお勧めします。

  • ROW_STANDARDIZATION空間加重は行で標準化されます。 各加重は行の合計で除されます。 これがデフォルトです。
  • NO_STANDARDIZATION空間加重の標準化は適用されません。
Boolean

コードのサンプル

GenerateNetworkSWM の例 1 (Python ウィンドウ)

次の Python スクリプトは、GenerateNetworkSWM 関数の使用方法を示しています。

import arcpy

arcpy.env.workspace = "c:\Data"

# Use a network data source hosted on ArcGIS Online.
arcpy.stats.GenerateNetworkSWM(r"Data.gdb\Hospital", "MyID", 
                               "Hospital.swm", "https://www.arcgis.com/",
                               "Driving Time", None, None, None, None, None, 
                               "LOCAL_TIME_AT_LOCATIONS", None, "5000 Meters",
                               "FIXED", 1, "ROW_STANDARDIZATION")

# Use a network data source stored on a local drive.
arcpy.stats.GenerateNetworkSWM(r"Data.gdb\Hospital", "MyID", "Hospital.swm", 
                               r"Data.gdb\transportation\streets_ND",
                               "Driving Time", None, None, None, None, None, 
                               "LOCAL_TIME_AT_LOCATIONS", None, "5000 Meters", 
                               "FIXED", 1, "ROW_STANDARDIZATION")
GenerateNetworkSWM の例 2 (スタンドアロン スクリプト)

次の Python スクリプトで、GenerateNetworkSWM ツールを使用する方法を示します。

# Create a Spatial Weights Matrix based on Network Data

# Import system modules
import arcpy

# Set the environment property to overwrite existing output
arcpy.env.overwriteOutput = True

# Check out the ArcGIS Network Analyst extension 
arcpy.CheckOutExtension("Network")

# Local variables...
workspace = r"c:\Data"

try:
    # Set the current workspace (to avoid having to specify the full path to
    # the feature classes each time)
    arcpy.env.workspace = workspace

    # Create Spatial Weights Matrix based on Network Data
    # Process: Generate Network Spatial Weights...
    arcpy.stats.GenerateNetworkSWM(r"Data.gdb\Hospital","MyID", 
        "Hospital.swm", r"Data.gdb\Transportation\Streets_ND",
        "Driving Time", None, None, None, None, None, 
        "LOCAL_TIME_AT_LOCATIONS", None, "5000 Meters", "FIXED", 
        1,"ROW_STANDARDIZATION")

    # Create Spatial Weights Matrix based on Euclidean Distance
    # Process: Generate Spatial Weights Matrix...

    arcpy.stats.GenerateSpatialWeightsMatrix(
        r"Data.gdb\Hospital", "MyID", r"Euclidean6Neighs.swm", 
        "K_NEAREST_NEIGHBORS", "EUCLIDEAN", 1, None, 6, 
        "ROW_STANDARDIZATION", None, None, '', None, None)


    # Calculate Moran's Index of Spatial Autocorrelation for
    # average hospital visit times using Network Spatial Weights
    # Process: Spatial Autocorrelation (Morans I)...

    moransINet = arcpy.stats.SpatialAutocorrelation("Data.gdb\Hospital", 
                     "VisitTime", "NO_REPORT", "GET_SPATIAL_WEIGHTS_FROM_FILE",
                     "EUCLIDEAN_DISTANCE", "ROW", None, "Hospital.swm", None)

    # Calculate Moran's Index of Spatial Autocorrelation for
    # average hospital visit times using Euclidean Spatial Weights
    # Process: Spatial Autocorrelation (Morans I)...
    moransIEuc = arcpy.stats.SpatialAutocorrelation("Data.gdb\Hospital", 
                     "VisitTime", "NO_REPORT", "GET_SPATIAL_WEIGHTS_FROM_FILE",
                     "EUCLIDEAN_DISTANCE", "ROW", None, r"Euclidean6Neighs.swm", 
                     None)

except arcpy.ExecuteError:
    # If an error occurred when running the tool, print out the error message.
    print(arcpy.GetMessages())