データのアペンド (Append Data) (GeoAnalytics)

サマリー

既存のホスト フィーチャ レイヤーにフィーチャを追加します。

レガシー:

ArcGIS GeoAnalytics Server エクステンションは ArcGIS Enterprise で廃止されます。 GeoAnalytics Server最終リリースArcGIS Enterprise 11.3 に含まれています。 このジオプロセシング ツールは ArcGIS Enterprise 11.3 以前のバージョンで使用できます。

データのアペンド ツールの図
データのアペンドのワークフロー

使用法

  • このジオプロセシング ツールは ArcGIS Enterprise 10.6 1 以降で使用できます。

  • [入力レイヤー] パラメーター値は、ホストされている既存のポイント、ライン、ポリゴン、またはテーブル レイヤーにする必要があります。 別のレイヤーに追加する場合は、該当するデータセットのホスト レイヤーを最初に作成しておく必要があります。 これには、[データ ストアにコピー (Copy To Data Store)] ツールを使用するか、レイヤーをポータルで共有します。 レイヤーの共有の詳細については、「Web レイヤーの共有の概要」をご参照ください。

  • [アペンド レイヤー] パラメーター値は、ポイント、ライン、ポリゴン、またはテーブル ビッグ データ ファイル共有データセットまたはフィーチャ レイヤーです。

  • [アペンド レイヤー] 値は、[入力レイヤー] 値と同じジオメトリ タイプにする必要があります。 たとえば、テーブル フィーチャをテーブル フィーチャに追加し、ポイント フィーチャをポイント フィーチャに追加します。 ジオメトリ タイプが同じでない場合、フィーチャは追加されません。

  • [アペンド レイヤー] 値は、[入力レイヤー] 値と同じ時間タイプにする必要があります。 これらのタイプには、即時、間隔、なしが含まれる場合があります。

  • [入力レイヤー] 値のフィールド、ジオメトリ、時間は変更されません。

  • フィーチャの追加には、次の 2 つの方法を使用できます。

    • [一致するフィールドのみ追加] - 名前とタイプが一致するフィールドだけが追加されます。 これがデフォルトです。
    • [一致するフィールドの追加と相違の解決] - [アペンド フィールド] パラメーターを使用して、名前が異なるフィールドを一致させるか、[アペンド式] パラメーターを使用して、指定したフィールドの値を算出します。

      データのアペンド式の詳細

  • [アペンド フィールド] パラメーターでも [アペンド式] パラメーターでも一致しない [アペンド レイヤー] フィールドはすべて追加操作の結果から除外されます。

    たとえば、人類移動の研究者が次のように入力レイヤー スキーマと追加レイヤー スキーマを使用してデータセットを追加するとします。 両方のレイヤーには、タイプがテキストの Country というフィールドがあり、データ タイプは同じであるが名前は異なるフィールドが 2 つあります。 入力レイヤーには、Pop_ フィールドと Pop_Density フィールドがあり、アペンド レイヤーには、Population フィールドと area_km2 フィールドがあります。 研究員は、Country フィールドと Country フィールドを照合し、Population フィールドを Pop_ フィールドにアペンドし、数値計算を使用して Pop_Density フィールドの人口密度を計算します。

    入力レイヤー スキーマとアペンド レイヤー スキーマの例
    [データのアペンド (Append Data)] ツールで使用される入力レイヤー スキーマと追加レイヤー スキーマの例

    デフォルトでは、[データのアペンド (Append Data)] はそれぞれの Country フィールドを照合します。これは、両方のフィールドの名前とタイプが一致しているためです。 デフォルトでは、Pop_ フィールドと Pop_Density フィールドがアペンド レイヤーで一致しないため、両方のフィールドに Null 値が追加されます。

    デフォルトのフィールド マッピングの例
    [アペンド方法] パラメーターで [一致するフィールドのみ追加] オプションが選択されている場合に適用されるデフォルトのフィールド マッピング。

    カスタム フィールド マッピング仕様を定義するには、[アペンド方法] パラメーターの [一致するフィールドの追加と相違の解決] オプションを選択します。 [アペンド フィールド] パラメーターを使用して、[入力フィールド] Pop_ フィールドに [アペンド フィールド] Population フィールドの値を追加します。 [アペンド式] パラメーターを使用し、Arcade$feature["Population"]/$feature["area_km2"] を構築することで、アペンド レイヤー フィールド Populationarea_km2 を使用して、アペンドするフィーチャの Pop_Density 値を計算します。

    定義済みのフィールド マッピングの例
    [アペンド フィールド] および [アペンド式] パラメーターで指定された定義済みのフィールド マッピング。

  • ジオプロセシング ツールは、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 を使用してビッグ データ ファイル共有を作成する方法の詳細

パラメーター

ラベル説明データ タイプ
入力レイヤー

フィーチャを追加するホスト フィーチャ レイヤー。

Record Set
アペンド レイヤー

入力レイヤーに追加するフィーチャが含まれるレイヤー。

Record Set
アペンド方法
(オプション)

入力レイヤーのフィールドにアペンド レイヤーの値を追加する方法を指定します。

  • 一致するフィールドのみ追加入力レイヤーのフィールドに値が追加されるのは、そのフィールドと一致するフィールドがアペンド レイヤー内にある場合に限ります。 一致するフィールドが存在しないフィールドには NULL 値が追加されます。
  • 一致するフィールドの追加と相違の解決入力レイヤーのフィールドには、名前が同じでタイプが異なるアペンド レイヤーのフィールドまたは Arcade 式から算出された値を追加することができます。
String
アペンド フィールド
(オプション)

アペンド先の入力レイヤーのフィールドとタイプが同じで名前が異なるアペンド レイヤーのフィールド。 アペンド先の入力フィールドと、追加する値を含むアペンド フィールドを選択します。

Value Table
アペンド式
(オプション)

入力フィールドの値の計算に使用する Arcade 式。 式は Arcade で記述され、算術演算子と複数のフィールドを含めることができます。

アペンド先のフィールドを選択して、それぞれの式を指定して、追加する値を計算します。 レイヤーをマップにアペンドする場合、フィールドおよびヘルパーを使って式を組み立てることができます。

Value Table

派生した出力

ラベル説明データ タイプ
アペンド結果

フィーチャがアペンドされた、更新された入力。

Record Set

arcpy.geoanalytics.AppendData(input_layer, append_layer, {append_method}, {append_fields}, {append_expressions})
名前説明データ タイプ
input_layer

フィーチャを追加するホスト フィーチャ レイヤー。

Record Set
append_layer

入力レイヤーに追加するフィーチャが含まれるレイヤー。

Record Set
append_method
(オプション)

入力レイヤーのフィールドにアペンド レイヤーの値を追加する方法を指定します。

  • MATCHING_ONLY入力レイヤーのフィールドに値が追加されるのは、そのフィールドと一致するフィールドがアペンド レイヤー内にある場合に限ります。 一致するフィールドが存在しないフィールドには NULL 値が追加されます。
  • FIELD_MAPPING入力レイヤーのフィールドには、名前が同じでタイプが異なるアペンド レイヤーのフィールドまたは Arcade 式から算出された値を追加することができます。
String
append_fields
[append_fields,...]
(オプション)

アペンド先の入力レイヤーのフィールドとタイプが同じで名前が異なるアペンド レイヤーのフィールド。 アペンド先の入力フィールドと、追加する値を含むアペンド フィールドを選択します。

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

入力フィールドの値の計算に使用する Arcade 式。 式は Arcade で記述され、算術演算子と複数のフィールドを含めることができます。

Value Table

派生した出力

名前説明データ タイプ
append_result

フィーチャがアペンドされた、更新された入力。

Record Set

コードのサンプル

AppendData の例 (スタンドアロン スクリプト)

次のスタンドアロン スクリプトで、AppendData 関数を使用する方法を示します。

# Description: Append February 2018 sales records to the ANNUAL_SALES2018 
#              hosted layer.
#              
#	Caution: AppendData updates the ANNUAL_SALES2018 layer with appended 
#          features.

# Requirements: ArcGIS GeoAnalytics Server

# Import system modules
import arcpy

# Set local variables
inputLayer = "https://sampleserver6.arcgisonline.com/arcgis/rest/services/ANNUAL_SALES2018/FeatureServer/0"
appendLayer = "https://sampleserver6.arcgisonline.com/arcgis/rest/services/DataStoreCatalogs/bigDataFileShares_sales2018/BigDataCatalogServer/FEBRUARY_SALES2018"
appendMethod = "FIELD_MAPPING"
fieldMapping = "Pop_ Population;State_ StateName", 
expressionMapping = "Pop_density $feature.Population/$feature.area_km2;Unused_field null"

# Run Append Data
arcpy.geoanalytics.AppendData(inputLayer, appendLayer, appendMethod, 
                              fieldMapping, expressionMapping)

ライセンス情報

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

関連トピック