Zusammenfassung
Erstellt einen neuen Layer mit berechneten Feldwerten.
Verwendung
Dieses Geoverarbeitungswerkzeug ist in ArcGIS Enterprise 10.6 oder höher verfügbar.
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 über GeoAnalytics Server-Arcade-Ausdrücke mit "Feld berechnen"
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.
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
- GlobalID: Wenn Ergebnisse im Data Store vom Typ "spatiotemporal" gespeichert werden.
- datetime: Wenn Ergebnisse zeitbezogen sind. Die neuen Felder sind instant_datetime für Zeitdaten vom Typ "Sofort" sowie start_datetime und end_datetime 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 ArcGIS GeoAnalytics Server. Die Analyse wird auf dem GeoAnalytics Server ausgeführt, und die Ergebnisse werden in den eigenen Inhalten in ArcGIS Enterprise gespeichert.
Bei der Ausführung von GeoAnalytics Server-Werkzeugen wird die Analyse auf dem GeoAnalytics Server abgeschlossen. Für eine optimale Performance sollten die Daten dem GeoAnalytics Server über Feature-Layer zur Verfügung stehen, die auf Ihrem ArcGIS Enterprise-Portal gehostet werden. Alternativ können Big-Data-Dateifreigaben verwendet werden. Daten, auf die der GeoAnalytics Server nicht lokal zugreifen kann, werden vor Analysebeginn auf den GeoAnalytics Server verschoben. Dadurch dauert die Ausführung eines Werkzeugs länger. Es kann zudem vorkommen, dass das Verschieben der Daten von ArcGIS Pro zum GeoAnalytics Server fehlschlägt. Die Wahrscheinlichkeit eines Fehlers hängt dabei von der Netzwerkgeschwindigkeit sowie der Größe und Komplexität der Daten ab. Daher wird empfohlen, dass Sie Ihre Daten stets freigeben oder eine Big-Data-Dateifreigabe erstellen.
Weitere Informationen zum Freigeben von Daten in Ihrem Portal
Weitere Informationen zum Erstellen einer Big-Data-Dateifreigabe über Server Manager
Ähnliche Analysen können auch mit Folgendem durchgeführt werden:
- Das Werkzeug Feld berechnen in der Toolbox "Data Management".
Syntax
CalculateField(input_layer, output_name, field_name, field_type, expression, {track_aware}, track_fields, {data_store}, {time_boundary_split}, {time_boundary_reference})
Parameter | Erklärung | Datentyp |
input_layer | Die Eingabe-Features, die ein berechnetes Feld enthalten sollen. | Record Set |
output_name | Der Name des Ausgabe-Feature-Service. | String |
field_name | Der Name des Felds, das berechnete Werte enthalten soll. Dies kann ein vorhandenes Feld oder ein neuer Feldname sein. | String |
field_type | 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 |
data_store (optional) | Gibt den ArcGIS Data Store für das Speichern der Ausgabe an. Die Standardeinstellung ist SPATIOTEMPORAL_DATA_STORE. Alle im SPATIOTEMPORAL_DATA_STORE gespeicherten Ergebnisse werden im WGS84 gespeichert. Ergebnisse, die in einem RELATIONAL_DATA_STORE gespeichert werden, behalten ihr Koordinatensystem bei.
| String |
time_boundary_split (optional) | Zeitspanne zur Aufteilung von Eingabedaten für die Analyse. Bei Angabe einer Zeitgrenze können Sie Werte innerhalb einer bestimmten Zeitspanne analysieren. Bei einer Zeitgrenze von einem Tag, beginnend am 1. Januar 1980, werden die Tracks jeweils zu Beginn des Tages geteilt. Dieser Parameter ist nur in ArcGIS Enterprise 10.7 und höher verfügbar. | Time Unit |
time_boundary_reference (optional) | Bezugszeit zur Aufteilung von 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. Dieser Parameter ist nur in ArcGIS Enterprise 10.7 und höher verfügbar. | Date |
Abgeleitete Ausgabe
Name | Erklärung | Datentyp |
output_table | Die neue Ausgabe mit berechneten Werten. | Datensatz |
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
# Requirements: ArcGIS GeoAnalytics Server
# Import system modules
import arcpy
# Set local variables
inFeatures = "https://example.arcgis.com/arcgis/rest/services/Hurricanes/FeatureServer/0"
newField = "MeanSpeed3"
outFS = "HurricaneTracks_Mean"
trackIdentifier = "Name"
calcExpression = "Average($track.field['WINDSPEED'].history(-3))"
# Execute Reconstruct Tracks
arcpy.geoanalytics.CalculateField(inFeatures, outFS, newField, "Double",
calcExpression, True, trackIdentifier)
Umgebungen
- Ausgabe-Koordinatensystem
Das Koordinatensystem, das für die Analyse verwendet wird. Die Analyse wird im Eingabe-Koordinatensystem ausgeführt, sofern nicht anders durch diesen Parameter angegeben. Für GeoAnalytics Tools werden die Endergebnisse im Data Store vom Typ "spatiotemporal" in WGS84 gespeichert.
Lizenzinformationen
- Basic: Erfordert ArcGIS GeoAnalytics Server
- Standard: Erfordert ArcGIS GeoAnalytics Server
- Advanced: Erfordert ArcGIS GeoAnalytics Server