ラベル | 説明 | データ タイプ |
入力フィーチャクラス | ネットワーク上の位置を表すポイント フィーチャクラス。各フィーチャに対して近傍とウェイトが計算され、出力空間ウェイト マトリックス ファイルに保存されます。 | Feature Class |
一意の ID フィールド | 入力フィーチャクラスの各フィーチャの個別値を含む整数フィールドです。一意の ID 値を含むフィールドが存在しない場合は、整数フィールドをフィーチャクラス テーブルに追加し、FID/OBJECTID フィールドに等しいフィールド値を計算することによって、作成できます。 | Field |
出力空間ウェイト マトリックス ファイル | 各入力フィーチャの近傍とウェイトを格納する出力ネットワーク空間ウェイト マトリックス ファイル (*.swm)。 | File |
入力ネットワーク データ ソース | 各入力フィーチャの近傍の検索に使用されるネットワーク データセット。ネットワーク データセットは通常、道路ネットワークを表しますが、鉄道や歩道など、他の種類の交通ネットワークを表すこともできます。ネットワーク データセットには、距離、移動時間、またはコストに関連する属性が 1 つ以上含まれている必要があります。 | Network Data Source |
移動モード
| 解析対象の交通モード。移動モードには、歩行者、車、トラック、その他の輸送手段がネットワークをどのように移動するかが定義されており、移動規制や U ターン ポリシーなどのネットワーク設定のコレクションを表します。 | String |
インピーダンス距離カットオフ | フィーチャの近傍と見なされる最大インピーダンス距離。距離がこの値よりも遠いフィーチャは、近傍として使用されません。デフォルトでは、距離カットオフは使用されません。 | Linear Unit |
インピーダンス時間カットオフ (オプション) | フィーチャの近傍と見なされる最大インピーダンス移動時間。移動時間がこの値より長いフィーチャは、近傍として使用されません。デフォルトでは、時間カットオフは使用されません。 | Time Unit |
インピーダンス コスト カットオフ
(オプション) | フィーチャの近傍と見なされる最大インピーダンス コスト。移動コストがこの値よりも大きいフィーチャは、近傍として使用されません。デフォルトでは、コスト カットオフは使用されません。 | Double |
最大近傍数 (オプション) | 各フィーチャの最大近傍数を表す整数。各フィーチャに使用される実際の近傍数は、インピーダンス カットオフにより少なくなる場合があります。 | Long |
時刻
(オプション) | 解析では、時刻による交通状況が考慮されます。交通状況は、指定された時間に移動できる距離に影響を与える可能性があります。日付または時刻が指定されていない場合、解析は交通の影響を考慮しません。 特定の日付を使用する代わりに、次の日付を使用して曜日を指定することができます。
たとえば、移動を火曜日の 5:00 PM に開始するよう指定するには、パラメーター値を「1900/1/2 5:00 PM」に指定します。 | Date |
タイム ゾーン
(オプション) | [時刻] パラメーターのタイム ゾーンを指定します。
| String |
バリア (オプション) | ブロックされている交差点、道路の閉鎖、事故現場、ネットワーク沿いで移動がブロックされているその他の場所を表すフィーチャ。 | Feature Layer |
検索許容値 (オプション) | 各入力フィーチャをネットワーク上の位置に割り当てる際に使用される最大距離。入力ポイントのいずれかがネットワークのラインに正確に一致しない場合、それらのポイントは解析用にネットワーク上の最も近い位置に割り当てられます。ただし、フィーチャがネットワーク上の任意の位置からの検索許容値よりも遠い場合、そのフィーチャはネットワークに割り当てられず、解析には含まれません。 | Linear Unit |
空間リレーションシップのコンセプト (オプション) | 各近傍にウェイトを定義する方法を指定します。
| String |
指数 (オプション) | [空間リレーションシップのコンセプト] パラメーターに [逆] が指定されている場合に使用される指数。各近傍に割り当てられたウェイトは、距離、時間、またはコストの逆数を指数で累乗して計算されます。デフォルト値は 1 で、値は 0.01 ~ 4 である必要があります。指数が増加するにつれて、ウェイトは急激に減少します。 | Double |
行を標準化 (オプション) | 行の標準化を適用するかどうかを指定します。行の標準化が推奨されるのは、サンプリングの設計や指定された集約方式によって入力ポイントの位置が偏る可能性があるときです。距離、時間、またはコストの逆数に基づいて近傍にウェイトを付与する場合も、行を標準化することをお勧めします。
| Boolean |
サマリー
ネットワーク データセットを使用して空間ウェイト マトリックス ファイル (*.swm) を作成し、基礎となるネットワーク構造における空間リレーションシップを定義します。
図
使用法
ネットワーク データセットは、次のいずれかのソースから取得できます。
- ローカル ドライブまたはネットワークに保存されたネットワーク データセット。組織が独自の道路ネットワーク データセットを保持してる場合、すでにアクセスを持っているかもしれません。
- ArcGIS Online または ArcGIS Enterprise でホストされている物流およびルート検索サービス。ArcGIS Online を使用して解析する場合は、その解析で、ArcGIS Online クラウドに格納されている高品質な世界規模のネットワーク データセットが参照され、ArcGIS Online クレジットが消費されます。
- ArcGIS StreetMap Premium から提供される構成済みネットワーク データセット。これらのネットワーク データセットは SDC 形式で、北米、中南米、ヨーロッパ、中東、アフリカ、日本、オーストラリア、ニュージーランドが含まれます。
-
このツールは、出力として空間ウェイト マトリックス ファイル (*.swm) を作成します。[空間統計] および [時空間パターン マイニング] ツールボックスのさまざまなツールには、このファイルを使用してフィーチャの空間リレーションシップを定義できる [空間リレーションシップのコンセプト] パラメーターが含まれています。ネットワーク データソースに空間ウェイト マトリックスを使用すると、距離、移動時間、および移動コストによる空間リレーションシップを定義できます。
-
[入力フィーチャクラス] はポイントである必要があります。このツールでは、ポリゴンおよびポリラインはサポートされていません。
-
[一意の ID フィールド] パラメーターを使用して、このツールの出力を入力フィーチャに関連付けます。一意の ID 値を含むフィールドが存在しない場合は、新たな整数フィールドをフィーチャクラス テーブルに追加し、FID/OBJECTID フィールドに等しいフィールド値を計算することによって、作成できます。FID および OBJECTID フィールドの値は、フィーチャクラスをコピーまたは編集するときに変更される場合があります。そのため、これらのフィールド値を [一意の ID フィールド] パラメーターで直接使用することはできません。
-
各フィーチャに関連付けられている近傍数は、[最大近傍数] パラメーターと 3 つのインピーダンス カットオフ パラメーターによって決定されます。このツールは、最大近傍数を超えたり、インピーダンスがいずれかのカットオフ値を超過するフィーチャを使用したりせずに、入力フィーチャに最も近いフィーチャをできるだけ多く使用します。インピーダンスは、距離、移動時間、またはコストによって定義できます。使用できるインピーダンスのタイプは、ネットワーク データ ソースのプロパティおよび [移動モード] パラメーターの値によって異なります。
-
ネットワーク データセットに階層が含まれている場合、階層を使用して空間リレーションシップが定義されます。階層では、ネットワーク エッジが幹線道路、一般道路、生活道路に分類されます。ネットワークの階層を使用してフィーチャ間の空間関係を作成するときには、一般道路よりも幹線道路での移動が優先され、生活道路よりも一般道路での移動が優先されます。
[空間リレーションシップのコンセプト] パラメーターに [逆] が指定されている場合は、[行の標準化] パラメーターをオンにして行の標準化を実行することをお勧めします。行の標準化が実行されていない場合、距離の単位が異なると空間ウェイトも異なります。
-
すべての入力フィーチャは、解析前にネットワーク データセットの空間参照に投影され、ネットワーク空間ウェイト マトリックス ファイルがこの空間参照に構築されます。この空間参照で以降のすべての解析を実行して、空間リレーションシップを適切に表現することをお勧めします。
パラメーター
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 (オプション) | 解析では、時刻による交通状況が考慮されます。交通状況は、指定された時間に移動できる距離に影響を与える可能性があります。日付または時刻が指定されていない場合、解析は交通の影響を考慮しません。 特定の日付を使用する代わりに、次の日付を使用して曜日を指定することができます。
たとえば、移動を火曜日の 5:00 PM に開始するよう指定するには、パラメーター値を「1900/1/2 5:00 PM」に指定します。 | Date |
Time_Zone (オプション) | Time_of_Day パラメーターのタイム ゾーンを指定します。
| String |
Barriers (オプション) | ブロックされている交差点、道路の閉鎖、事故現場、ネットワーク沿いで移動がブロックされているその他の場所を表すフィーチャ。 | Feature Layer |
Search_Tolerance (オプション) | 各入力フィーチャをネットワーク上の位置に割り当てる際に使用される最大距離。入力ポイントのいずれかがネットワークのラインに正確に一致しない場合、それらのポイントは解析用にネットワーク上の最も近い位置に割り当てられます。ただし、フィーチャがネットワーク上の任意の位置からの検索許容値よりも遠い場合、そのフィーチャはネットワークに割り当てられず、解析には含まれません。 | Linear Unit |
Conceptualization_of_Spatial_Relationships (オプション) | 各近傍にウェイトを定義する方法を指定します。
| String |
Exponent (オプション) | INVERSE が Conceptualization_of_Spatial_Relationships パラメーターに指定されている場合に使用される指数。各近傍に割り当てられたウェイトは、距離、時間、またはコストの逆数を指数で累乗して計算されます。デフォルト値は 1 で、値は 0.01 ~ 4 である必要があります。指数が増加するにつれて、ウェイトは急激に減少します。 | Double |
Row_Standardization (オプション) | 行の標準化を適用するかどうかを指定します。行の標準化が推奨されるのは、サンプリングの設計や指定された集約方式によって入力ポイントの位置が偏る可能性があるときです。距離、時間、またはコストの逆数に基づいて近傍にウェイトを付与する場合も、行を標準化することをお勧めします。
| Boolean |
コードのサンプル
次の 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")
次の 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())