ラベル | 説明 | データ タイプ |
入力レイヤー | フィールド演算を実行する入力フィーチャ。 | Table View |
出力データセット | 計算フィールドを含む新しいデータセット。 | Feature Class;Table |
計算するフィールド | 新しく作成されたフィールドと既存のフィールドのどちらの値を計算するかを指定します。
| String |
新しいフィールド名 (オプション) | 値を計算する新しいフィールド。 | String |
既存のフィールド (オプション) | 値を計算する既存のフィールド。 | Field |
フィールド タイプ (オプション) | 計算フィールドのフィールド タイプを指定します。
| String |
式 | フィールドの値を計算します。 式は Arcade で記述され、[+ - * / ] 演算子と複数のフィールドを含めることができます。 地理座標系を使用していない限り、計算される値は入力の空間参照の単位で適用されます。地理座標系を使用している場合の単位は m です。 レイヤーをマップに追加する場合、[フィールド] および [ヘルパー] フィルターを使って条件式を組み立てることができます。 | Calculator Expression |
トラッキング対応 (オプション) | 式が、トラッキング対応の式を使用するかどうかを指定します。
| Boolean |
トラッキング フィールド | 一意のトラッキングを識別するために使用される 1 つ以上のフィールド。 | Field |
時間境界の分割 (オプション) |
入力データを解析用に分割する期間。 時間境界により、指定期間内の値を解析できます。 たとえば、時間境界を 1 日として、時間境界基準を 1980 年 1 月 1 日に設定した場合、トラッキングは 1 日の開始時ごとに分割されます。 | Time Unit |
時間境界の基準 (オプション) |
入力データを解析用に分割する際に使用される基準時間。 時間境界は、データの全期間に対して作成されます。基準時間は最初から作成する必要はありません。 基準時間を指定しないと、1970 年 1 月 1 日が使用されます。 | Date |
サマリー
計算フィールドの値でレイヤーを作成します。
使用法
[フィールド演算 (Calculate Field)] は、テーブル、ポイント、ライン、またはポリゴン フィーチャで実行されます。
[フィールド演算 (Calculate Field)] ツールを使用すると、必ずレイヤーが作成されます。 入力は変更されません。 一度に 1 つのフィールドの値のみを計算できます。
既存のフィールドや、一意のフィールド名を作成して追加した新しいフィールドの値を計算することができます。
式は、Arcade 式を使用して作成されます。 詳細については、「GeoAnalytics Desktop ツールの Arcade 式」をご参照ください。
Arcade 式はトラッキング対応にすることができます。 トラッキング対応の式では、データが時間対応かつ時間のタイプが瞬間を示し、トラッキング フィールドを指定する必要があります。 トラッキング対応の式の作成に関する詳細については、「トラッキング対応の例」をご参照ください。
トラッキング対応の計算を含めるには、以下を実行する必要があります。
- 時間対応かつ時間のタイプが瞬間を示すレイヤーを使用します。
- [トラッキング対応] チェックボックスをオンにします。
- トラッキングの識別に使用するフィールドを選択します。
トラッキングは、1 つ以上のトラッキング フィールドの一意の組み合わせで表されます。 たとえば、flightID フィールドと Destination フィールドがトラッキング識別子として使用される場合、フィーチャ [ID007]、[Solden] および [ID007]、[Tokyo] は 2 つの個別トラッキングになります。Destination フィールドの値が異なるからです。
次のツールを使用して、類似の解析を実行することもできます。
- データ管理ツールボックスの [フィールド演算 (Calculate Field)] ツール。
時間間隔の境界を適用すると、指定間隔でトラッキングがセグメント化されます。 たとえば、時間間隔の境界を 1 日に設定し、1990 年 1 月 1 日午前 9 時から開始した場合、各トラッキングは毎日午前 9 時に切詰められ、このセグメントの範囲内で解析されます。 この分割を使用すると、解析のためのトラッキングを短縮できるため、計算時間を高速化できます。 時間間隔の境界の繰り返しによる分割が解析で有効な場合は、ビッグ データ処理にこの方法を使用することをお勧めします。 時間の境界を設定するには、解析がトラッキング対応である必要があります。
出力には、計算済みのフィールドに加え、以下の新しいフィールド タイプを含めることができます。
- ObjectID
- datetime — 結果が時間対応の場合。 新しいフィールドは、時間タイプが瞬間の場合は instant_date、時間タイプが間隔の場合は start_date と end_date です。
次の 1 つまたは複数の操作を実行して、[フィールド演算 (Calculate Field)] ツールのパフォーマンスを向上させることができます。
- 対象データのみが解析されるように、範囲環境を設定します。
- トラッキングを使用している場合は、[時間境界分割] パラメーターを使用してトラッキングを分割します。
- 式にトラッキング式が含まれる場合のみ、[トラッキング対応] を選択します。
- 解析が実行されているロケーションに対してローカルなデータを使用します。
ジオプロセシング ツールは、Spark を活用しています。 解析は、デスクトップ コンピューターで複数のコアを並列に使用して行われます。 解析の実行の詳細については、「GeoAnalytics Desktop ツールの考慮事項」をご参照ください。
GeoAnalytics Desktop ツールを実行する際、解析はデスクトップ コンピューターで行われます。 最適なパフォーマンスを得るために、データがデスクトップで利用できる必要があります。 ホスト フィーチャ レイヤーを使用している場合は、ArcGIS GeoAnalytics Server を使用することをお勧めします。 データがローカルではない場合は、ツールの実行時間は長くなります。 ArcGIS GeoAnalytics Server を使用して解析を実行する方法については、GeoAnalytics Tools をご参照ください。
パラメーター
arcpy.geoanalytics.CalculateField(input_layer, output, field_to_calculate, {field_name}, {existing_field}, {field_type}, expression, {track_aware}, track_fields, {time_boundary_split}, {time_boundary_reference})
名前 | 説明 | データ タイプ |
input_layer | フィールド演算を実行する入力フィーチャ。 | Table View |
output | 計算フィールドを含む新しいデータセット。 | Feature Class;Table |
field_to_calculate | 新しく作成されたフィールドと既存のフィールドのどちらの値を計算するかを指定します。
| String |
field_name (オプション) | 値を計算する新しいフィールド。 | String |
existing_field (オプション) | 値を計算する既存のフィールド。 | Field |
field_type (オプション) | 計算フィールドのフィールド タイプを指定します。
| String |
expression | フィールドの値を計算します。 式は Arcade で記述され、演算子と複数のフィールドを含めることができます。 地理座標系を使用していない限り、計算される値は入力の空間参照の単位で適用されます。地理座標系を使用している場合の単位は m です。 | Calculator Expression |
track_aware (オプション) | 式が、トラッキング対応の式を使用するかどうかを指定します。
| Boolean |
track_fields [track_fields,...] | 一意のトラッキングを識別するために使用される 1 つ以上のフィールド。 | Field |
time_boundary_split (オプション) |
入力データを解析用に分割する期間。 時間境界により、指定期間内の値を解析できます。 たとえば、時間境界を 1 日として、時間境界基準を 1980 年 1 月 1 日に設定した場合、トラッキングは 1 日の開始時ごとに分割されます。 | Time Unit |
time_boundary_reference (オプション) |
入力データを解析用に分割する際に使用される基準時間。 時間境界は、データの全期間に対して作成されます。基準時間は最初から作成する必要はありません。 基準時間を指定しないと、1970 年 1 月 1 日が使用されます。 | Date |
コードのサンプル
次の Python ウィンドウ スクリプトは、CalculateField 関数の使用方法を示しています。
# Name: CalculateField.py
# Description: Calculate the mean of the 3 most recent speed measurements in hurricane tracks
# Import system modules
import arcpy
arcpy.env.workspace = "C:/data/Weather.gdb"
# Set local variables
inFeatures = "Hurricanes"
fieldName = "MeanSpeed3"
out = "HurricaneTracks_Mean"
calcExpression = "Date($feature.DateAsString)"
# Run Calculate Field
arcpy.gapro.CalculateField(inFeatures, out, "NEW_FIELD", fieldName, "", "Date",
calcExpression)