注意:
現在、この機能は Map Viewer Classic (旧名称 Map Viewer) でのみサポートされています。 新しい Map Viewer の今後のリリースで提供される予定です。
[フィーチャの結合 (Join Features)] ツールは、空間、時系列、および属性リレーションシップ (またはその組み合わせ) に基づいて、一方のレイヤーまたはテーブルから他方のレイヤーまたはテーブルに属性を転送します。 必要に応じて、結合されたフィーチャの統計情報も計算できます。
ワークフロー図
解析での使用 GeoAnalytics Tools
GeoAnalytics Tools を使用した解析は、複数の ArcGIS GeoAnalytics Server コンピューターやコアにまたがる分散型処理を使用して実施されます。GeoAnalytics Tools と ArcGIS Enterprise の標準的なフィーチャ解析ツールは、異なるパラメーターと機能を持ちます。これらの相違点については、「フィーチャ解析ツールの相違点」をご参照ください。
例
あるアナリストは都市全体の犯罪データを持っています。 これらの犯罪の影響を解析および調査するために、アナリストは犯罪の発生場所と都市のさまざまな管轄区域 (学区、警察の巡回区域、近隣地区など) との関係を理解する必要があります。 フィーチャの結合ツールを使用することで、場所に関する詳細情報を各犯罪に紐付けて、さまざまな管轄区域への影響を詳細に調査および解析できます。
ヒント:
ポータルが ArcGIS Living Atlas コンテンツを使用するように構成されている場合は、人口データを含む州および郡の ArcGIS Living Atlas レイヤーを使用して、人口データを犯罪データに結合させることができます。
使用上の注意
フィーチャの結合ツールは、一方のレイヤーから他方のレイヤーに情報を移したり追加できるように設計されています。 転送される情報は、定義された空間リレーションシップ、定義された時系列リレーションシップ、2 つのデータセット間で共有されている共通の属性、またはその 3 つの組み合わせに基づいています。
フィーチャを結合する際は、空間リレーションシップ、時系列リレーションシップ、属性リレーションシップ、またはこれら 3 つの組み合わせに基づいてフィーチャを結合できます。
オプション | Description |
---|---|
[空間リレーションシップの選択] | フィーチャが互いに結合しているかどうかを判断する空間リレーションシップ。 使用可能なリレーションシップは、結合されるレイヤーのジオメトリのタイプ (ポイント、ライン、エリア) によって決まります。 使用可能な空間リレーションシップを次に示します。
|
[時系列リレーションシップの選択] | フィーチャが互いに結合しているかどうかを判断する時系列リレーションシップ。 使用可能なリレーションシップは、結合されるレイヤーの時系列のタイプ (インスタントまたは間隔) によって決まります。 使用可能な時系列リレーションシップを次に示します。
|
[照合するフィールドの選択] | フィーチャが互いに結合しているかどうかを判断する属性リレーションシップ。 フィーチャは、結合レイヤーのフィールド値がターゲット レイヤーのフィールド値に等しい場合に一致します。 |
同じターゲット フィーチャを持つ複数のフィーチャが存在する場合、すべての一致するフィーチャを個別に結合するかどうか ([1 対多の結合])、または一致するすべてのフィーチャをまとめて結合するかどうか ([1 対 1 の結合]) を決定できます。
- [1 対 1 の結合] - このオプションを選択すると、一致する結合フィーチャがすべて、ターゲット レイヤーの各フィーチャに集約されます。 一致するフィーチャがあるフィーチャのみが、集約と出力に含まれます。 結合されたフィーチャの個数は、合計、最小、最大、範囲、平均、分散、標準偏差などの他の統計情報とともに追加されます。
- [1 対多の結合] - このオプションを選択すると、一致するフィーチャがすべてターゲット レイヤーに結合されます。 結果レイヤーには、ターゲット フィーチャの複数レコードが含まれます。
必要に応じて、フィーチャを結合するための式を作成できます。 式を指定すると、条件を満たすフィーチャのみが使用されます。 たとえば、式 $target["Magnitude"] > $join["Explosion"] を使用して、Explosion というフィールドを含む結合フィーチャより大きい場合のみ、Magnitude フィールドからターゲット フィーチャを結合できます。 [フィーチャの結合 (Join Features)] における Arcade 条件式の詳細
[現在のマップ範囲を使用] がオンの場合、現在のマップ範囲に表示されるフィーチャだけが解析されます。 オフの場合、ターゲット レイヤーと結合レイヤーのすべてのフィーチャが、現在のマップ範囲内になくても解析されます。
制限事項
[1 対 1 の結合] 操作が指定されている場合のみ、要約統計量が計算されます。
[フィーチャの結合] ツールの詳細
以下では、[フィーチャの結合 (Join Features)] ツールの機能について説明します。
計算
[1 対 1 の結合] 操作で使用されている指定の空間、時系列、または属性リレーションシップを満たしているフィーチャに限り、統計情報が計算されます。 数値統計情報と文字列統計情報を計算できます。 デフォルトでは、すべての統計情報が計算されます。 上記の画像では、以下のテーブルに示す Type フィールドの値 [Apartments] に関して、Occupants フィールドで数値統計情報が計算され、Building_Name フィールドで文字列統計情報が計算されています。
数値の統計情報 | タイプがアパートの入室者の結果 |
---|---|
数 | 次の個数:
|
合計値 |
|
最小 | 次のうちの最小:
|
最大 | 次のうちの最大:
|
平均 |
|
分散 |
|
標準偏差 |
|
文字列の統計情報 | タイプがアパートの入室者の結果 |
---|---|
数 | ["Silverbirch Estates", "Pine Ridge", "Lake View"] = 3 |
任意 | = "Pine Ridge" |
注意:
計数統計 (文字列フィールドと数値フィールド) は、非 NULL の値を数えます。 [0, 1, 10, 5, null, 6] = 5 の個数。 [Primary, Primary, Secondary, null] = 3 の個数。
ArcGIS API for Python の例
フィーチャの結合ツールは ArcGIS API for Python で使用できます。
この例では、落雷が原因の可能性がある州の停電を検索します。 このツールは、落雷後 30 分以内かつ 20 マイル以内で発生した停電をすべて返します。
# Import the required ArcGIS API for Python modules
import arcgis
from arcgis.gis import GIS
from arcgis.geoanalytics import summarize_data
# Connect to your ArcGIS Enterprise portal and confirm that GeoAnalytics is supported
portal = GIS("https://myportal.domain.com/portal", "gis_publisher", "my_password")
if not portal.geoanalytics.is_supported():
print("Quitting, GeoAnalytics is not supported")
exit(1)
# Find the big data file share dataset you'll use for analysis
search_result = portal.content.search("", "Big Data File Share")
# Look through the search results for a big data file share with the matching name
bdfs_search = next(x for x in search_result if x.title == "bigDataFileShares_NaturalDisaters")
# Look through the big data file share for lightning
lightning = next(x for x in bdfs_search.layers if x.properties.name == "Lightning")
# Find a feature layer named "PowerOutages" in your ArcGIS Enterprise portal
outages_search_result = portal.content.search("PowerOutages", "Feature Layer")
outages_layer = outages_search_result[0].layers[0]
# Set the tool environment settings
arcgis.env.verbose = True
arcgis.env.defaultAggregations = True
# Run the Join Features tool
output = summarize_data.join_features(target_layer = outages_layer,
join_layer = lightning,
join_operation = "JoinOneToMany",
spatial_relationship = "Near",
spatial_near_distance = 20,
spatial_near_distance_unit = "Miles",
temporal_relationship = "NearAfter",
temporal_near_distance = 30,
temporal_near_distance_unit = "Minutes",
output_name = "LightningOutages")
# Visualize the tool results if you are running Python in a Jupyter Notebook
processed_map = portal.map('yourState', 10)
processed_map.add_layer(output)
processed_map
類似のツール
[フィーチャの結合 (Join Features)] を使用して、空間および属性リレーションシップに基づき、一方のレイヤーまたはテーブルから他方のレイヤーまたはテーブルに属性を転送します。
Map Viewer Classic の解析ツール
[ポイントの集約] ツールを使用し、ポイントをエリアに集約します。
ArcGIS Pro の解析ツール
[フィーチャの結合 (Join Features)] では、[空間結合 (Spatial Join)] ツール、[テーブルの結合 (Add Join)] ツール、および [要約統計量 (Summary Statistics)] ツールの機能を実行できます。
[フィーチャの結合 (Join Features)] ツールは ArcGIS Pro で実行できます。