Zusammenfassung
Erstellt einen neuen Layer mit berechneten Feldwerten.
Verwendung
Feld berechnen wird für Tabellen, oder Punkt-, Linien- oder Polygon-Features ausgeführt.
Feld berechnen erstellt immer einen neuen Layer. Die Eingabe wird nicht modifiziert. Sie können immer nur Werte für ein Feld berechnen.
Sie können Werte für ein bereits vorhandenes Feld oder ein neu hinzugefügtes Feld berechnen, indem Sie einen eindeutigen Feldnamen erstellen.
Die Ausdrücke werden unter Verwendung von Arcade-Ausdrücken erstellt. Weitere Informationen finden Sie unter Arcade-Ausdrücke in der Toolbox "GeoAnalytics Desktop".
Arcade-Ausdrücke können Tracking-bezogen sein. Für Tracking-bezogene Ausdrücke ist es erforderlich, dass die Daten Zeitdaten und vom Typ "Sofort" sind und dass ein Track-Feld angegeben wird. Weitere Informationen zu Tracking-bezogenen Ausdrücken finden Sie unter Beispiele für Tracking-bezogene Ausdrücke.
Um eine Tracking-bezogene Berechnung zu verwenden, müssen Sie wie folgt vorgehen:
- Verwenden Sie einen Layer mit aktivierten Zeiteigenschaften und Zeitpunkten.
- Aktivieren Sie das Kontrollkästchen Tracking-bezogen.
- Wählen Sie die Felder aus, die zum Identifizieren von Tracks verwendet werden.
Tracks werden durch die eindeutige Kombination aus mindestens einem Track-Feld dargestellt. Wenn beispielsweise die Felder flightID und Destination als Track-IDs verwendet werden, befinden sich die Features ID007, Solden und ID007, Tokyo in zwei getrennten Tracks, da sie verschiedene Werte für das Feld Destination aufweisen.
Ähnliche Analysen können auch mit Folgendem durchgeführt werden:
- Das Werkzeug Feld berechnen in der Toolbox "Data Management".
Bei Anwendung einer Zeitintervallgrenze werden Tracks in definierten Intervallen segmentiert. Wenn Sie die Zeitintervallgrenze beispielsweise auf 1 Tag festlegen, beginnend am 1. Januar 1990 um 9:00 Uhr, wird jeder Track für jeden Tag um 9:00 Uhr abgeschnitten und innerhalb dieses Segments analysiert. Durch diese Teilung wird die Rechenzeit beschleunigt, da für die Analyse kleinere Tracks erstellt werden. Wenn die Unterteilung nach einer wiederholt auftretenden Zeitintervallgrenze sinnvoll für Ihre Analyse ist, ist sie für die Big-Data-Verarbeitung zu empfehlen. Ihre Analyse muss Tracking-bezogen sein, um eine Zeitgrenze festzulegen.
Zusätzlich zum berechneten Feld kann die Ausgabe die folgenden neuen Feldtypen enthalten:
- ObjectID
- datetime: Wenn Ergebnisse zeitbezogen sind. Die neuen Felder sind instant_date für Zeitdaten vom Typ "Sofort" sowie start_date und end_date für Zeitdaten vom Typ "Intervall".
Wenn Sie einen oder mehrere der folgenden Schritte durchführen, können Sie die Performance des Werkzeugs Feld berechnen verbessern:
- Legen Sie die Ausdehnungsumgebung so fest, dass nur die gewünschten Daten analysiert werden.
- Wenn Sie Tracks verwenden, teilen Sie sie mit dem Parameter Aufteilung nach Zeitgrenze.
- Aktivieren Sie die Option Tracking-bezogen nur, wenn der Ausdruck einen Track-Ausdruck enthält.
- Verwenden Sie lokale Daten an der Stelle, an der die Analyse ausgeführt wird.
Dieses Geoverarbeitungswerkzeug wird unterstützt durch Spark. Bei Analysen auf Ihrem Desktop-Computer werden mehrere Kerne parallel verwendet. Weitere Informationen über die Ausführung der Analyse finden Sie unter Überlegungen zu GeoAnalytics Desktop-Werkzeugen.
Bei der Ausführung von GeoAnalytics Desktop-Werkzeugen wird die Analyse auf Ihrem Desktop-Computer durchgeführt. Für eine optimale Performance sollten die Daten auf Ihrem Desktop verfügbar sein. Wenn Sie einen gehosteten Feature-Layer verwenden, wird empfohlen, ArcGIS GeoAnalytics Server zu verwenden. Wenn Ihre Daten nicht lokal verfügbar sind, dauert die Ausführung eines Werkzeugs bedeutend länger. Informationen zur Verwendung von ArcGIS GeoAnalytics Server für Analysen finden Sie unter GeoAnalytics Tools.
Syntax
arcpy.gapro.CalculateField(input_layer, output, field_to_calculate, {field_name}, {existing_field}, {field_type}, expression, {track_aware}, track_fields, {time_boundary_split}, {time_boundary_reference})
Parameter | Erklärung | Datentyp |
input_layer | Die Eingabe-Features, die ein berechnetes Feld enthalten sollen. | Table View |
output | Ein neues Dataset mit berechneten Feldern. | Feature Class;Table |
field_to_calculate | Gibt an, ob Werte für ein neu erstelltes Feld oder ein vorhandenes Feld berechnet werden.
| String |
field_name (optional) | Das neue Feld, das berechnete Werte enthalten soll. | String |
existing_field (optional) | Das vorhandene Feld, für das Werte berechnet werden. | Field |
field_type (optional) | Gibt den Feldtyp für das berechnete Feld an.
| String |
expression | Berechnet Werte im Feld. Die Ausdrücke werden in Arcade geschrieben und können Operatoren und mehrere Felder enthalten. Berechnete Feldwerte werden in den Einheiten des Raumbezugs der Eingabe angewendet, es sei denn, Sie verwenden ein geographisches Koordinatensystem. In diesem Fall werden Meter verwendet. | Calculator Expression |
track_aware (optional) | Gibt an, ob der Ausdruck einen Tracking-bezogenen Ausdruck verwendet.
| Boolean |
track_fields [track_fields,...] | Ein oder mehrere Felder, die zum Identifizieren eindeutiger Spuren verwendet werden. | Field |
time_boundary_split (optional) | Zeitspanne zur Aufteilung der Eingabedaten für die Analyse. Bei Angabe einer Zeitgrenze können Sie Werte innerhalb einer bestimmten Zeitspanne analysieren. Wenn Sie als Zeitgrenze einen Tag und als Bezug für die Zeitgrenze den 1. Januar 1980 festlegen, werden die Tracks jeweils zu Beginn des Tages geteilt. | Time Unit |
time_boundary_reference (optional) | Bezugszeit zur Aufteilung der Eingabedaten für die Analyse. Zeitgrenzen werden für die gesamte Zeitspanne erstellt, wobei der Bezugszeitpunkt nicht zwangsläufig am Beginn der Zeitspanne liegen muss. Ohne Angabe einer Bezugszeit wird der 1. Januar 1970 verwendet. | Date |
Codebeispiel
Das folgende Skript veranschaulicht die Verwendung des Werkzeugs CalculateField im Python-Fenster.
#-------------------------------------------------------------------------------
# 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)"
# Execute Calculate Field
arcpy.gapro.CalculateField(inFeatures, out, "NEW_FIELD", fieldName, "", "Date",
calcExpression)
Umgebungen
Lizenzinformationen
- Basic: Nein
- Standard: Nein
- Advanced: Ja