Resumen
Crea una capa con los valores de campo calculados.
Uso
Esta herramienta de geoprocesamiento está disponible con ArcGIS Enterprise 10.6 o posterior.
Calcular campo se completa en tablas o entidades de puntos, líneas o polígonos.
Calcular campo creará siempre una capa. No modificará la entrada. Solo puede calcular valores para un único campo cada vez.
Puede calcular los valores para un campo existente o para un campo nuevo que agregue creando un nombre de campo único.
Las expresiones se crean mediante expresiones de Arcade.
Más información sobre las expresiones de Arcade en GeoAnalytics Server con Calcular campo
Las expresiones de Arcade pueden realizar seguimiento. Las expresiones que realizan seguimiento requieren que los datos tengan la función de tiempo habilitada y el tipo de tiempo de instante y que se especifique un campo de recorrido. Para obtener más información sobre cómo crear expresiones que realicen seguimiento, consulte Ejemplos con seguimiento.
Para incluir un cálculo que realice seguimiento, debe hacer lo siguiente:
- Utilice una capa que tenga la función de tiempo habilitada y sea de tipo de tiempo de instante.
- Active la casilla de verificación Tiempo habilitado.
- Seleccione los campos utilizados para identificar recorridos.
Los recorridos se representan mediante la combinación única de uno o más campos de recorrido. Por ejemplo, si se utilizan los campos flightID y Destination como identificadores de recorrido, las entidades ID007, Solden y ID007, Tokyo estarían separadas en dos recorridos, dado que tienen valores diferentes para el campo Destination.
Aplicar segmentos de límites de intervalos de tiempo realiza un seguimiento en un intervalo definido. Por ejemplo, si establece el límite de intervalo de tiempo en 1 día, a partir de las 9:00 AM del 1 de enero de 1990, cada recorrido se truncará a las 9:00 AM cada día y se analizará dentro de dicho segmento. Esta división acelera el tiempo de procesamiento, ya que crea recorridos más pequeños para el análisis. Si a su análisis le conviene dividir por un límite de intervalo de tiempo recurrente, le recomendamos que lo haga para procesar big data. El análisis debe realizar seguimiento para definir un límite de tiempo.
Además del campo calculado, la salida puede incluir los siguientes tipos de campo nuevos:
- ObjectID
- GlobalID: si los resultados se almacenan en el data store espaciotemporal.
- Datetime: si los resultados tienen seguimiento de tiempo. Los campos nuevos son instant_datetime, para el tipo de tiempo de instante, y start_datetime y end_datetime para tiempo de tipo de intervalo.
Es posible mejorar el rendimiento de la herramienta Calcular campo realizando una o varias de las siguientes acciones:
- Defina el entorno de extensión para analizar únicamente datos de interés.
- Si va a utilizar recorridos, divídalos con el parámetro División de límite de tiempo.
- Seleccione Tiempo habilitado solo si su expresión incluye una expresión de recorrido.
- Utilice datos locales en los que se ejecute el análisis.
Esta herramienta de geoprocesamiento se basa en ArcGIS GeoAnalytics Server. El análisis se completa en su GeoAnalytics Server y los resultados se almacenan en su contenido en ArcGIS Enterprise.
Al ejecutar herramientas de GeoAnalytics Server, el análisis se completa en GeoAnalytics Server. Para obtener un rendimiento óptimo, haga que los datos estén disponibles para GeoAnalytics Server mediante capas de entidades alojadas en su portal de ArcGIS Enterprise o mediante recursos compartidos de archivos de big data. Los datos que no son locales para su GeoAnalytics Server se moverán a GeoAnalytics Server antes de que comience el análisis. Significa que ejecutar una herramienta tardará más tiempo y, en algunos casos, mover los datos de ArcGIS Pro a GeoAnalytics Server podría fallar. El umbral de error depende de la velocidad de su red, así como del tamaño y complejidad de los datos. Por lo tanto, se recomienda que siempre comparta sus datos o que cree un recurso compartido de archivos de big data.
Más información acerca del uso compartido de datos en el portal
Más información sobre cómo crear un archivo compartido de Big Data mediante Server Manager
Se puede completar un análisis similar usando lo siguiente:
- La herramienta Calcular campo de la caja de herramientas Administración de datos
Sintaxis
arcpy.geoanalytics.CalculateField(input_layer, output_name, field_name, field_type, expression, {track_aware}, track_fields, {data_store}, {time_boundary_split}, {time_boundary_reference})
Parámetro | Explicación | Tipo de datos |
input_layer | Las entidades de entrada para las que se calculará un campo. | Record Set |
output_name | El nombre del servicio de entidades de salida. | String |
field_name | El nombre del campo que tendrá valores calculados. Puede tratarse del nombre de un campo existente o de un campo nuevo. | String |
field_type | Especifica el tipo de campo para el campo calculado.
| String |
expression | Calcula los valores del campo. Las expresiones están escritas en Arcade y pueden incluir operadores y varios campos. Los valores calculados se aplican en las unidades de la referencia espacial de la entrada, a menos que se use un sistema de coordenadas geográficas, en cuyo caso estarán en metros. | Calculator Expression |
track_aware (Opcional) | Especifique si la expresión utilizará una expresión que realiza seguimiento.
| Boolean |
track_fields [track_fields,...] | Uno o varios campos que se utilizarán para identificar recorridos únicos. | Field |
data_store (Opcional) | Especifica el ArcGIS Data Store en el que se guardará la salida. La predeterminada es SPATIOTEMPORAL_DATA_STORE. Todos los resultados almacenados en un big data store espaciotemporal se almacenarán en WGS84. Los resultados almacenados en un data store relacional mantendrán su sistema de coordenadas.
| String |
time_boundary_split (Opcional) | Un intervalo de tiempo en el que dividir los datos de entrada para el análisis. Un límite de tiempo permite analizar los valores dentro de un intervalo de tiempo definido. Por ejemplo, si utiliza un límite de tiempo de 1 día, desde el 1 de enero de 1980, los recorridos se dividirán al comienzo de cada día. Este parámetro solo está disponible con ArcGIS Enterprise 10.7 y posteriores. | Time Unit |
time_boundary_reference (Opcional) | El tiempo de referencia utilizado para dividir los datos de entrada para el análisis. Se crearán límites de tiempo para todo el intervalo de los datos y no es necesario que el tiempo de referencia se encuentre en el comienzo. Si no se especifica ningún tiempo de referencia, se utilizará el 1 de enero de 1970. Este parámetro solo está disponible con ArcGIS Enterprise 10.7 y posteriores. | Date |
Salida derivada
Nombre | Explicación | Tipo de datos |
output_table | La nueva salida con valores calculados. | Conjunto de registros |
Muestra de código
El siguiente script de la ventana de Python muestra cómo utilizar la herramienta CalculateField.
#-------------------------------------------------------------------------------
# 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)
Entornos
- Sistema de coordenadas de salida
El sistema de coordenadas que se usará para el análisis. El análisis se completará en el sistema de coordenadas de entrada salvo que este parámetro especifique otra opción. Para las GeoAnalytics Tools, los resultados finales se almacenarán en el data store espaciotemporal en WGS84.
Información de licenciamiento
- Basic: Requiere ArcGIS GeoAnalytics Server
- Standard: Requiere ArcGIS GeoAnalytics Server
- Advanced: Requiere ArcGIS GeoAnalytics Server