Campos de actualización por lotes (Administración de datos)

Resumen

Transforma los campos de una tabla o clase de entidad basándose en el esquema definido en la tabla de definición y crea una tabla o clase de entidad nueva.

Si utiliza esta herramienta, podrá realizar lo siguiente:

  • Agregar nuevos campos
  • Actualizar campos existentes
  • Reordenar campos
  • Cambiar tipos de campo
  • Cambiar propiedades de campos
  • Asignar o actualizar alias de campo
  • Calcular valores de campo en función de los campos existentes con Python
  • Quitar campos

Uso

  • La tabla de entrada puede ser una tabla o clase de entidad. La herramienta genera una nueva tabla o clase de entidad con el esquema actualizado.

  • Los cambios de esquema para la tabla de salida se definen mediante el parámetro Tabla de definición de esquema de salida.

    A continuación, se muestra un ejemplo de una tabla de definición:

    Ejemplo de una tabla de definición

    Si el valor del parámetro Tabla de definición de esquema de salida incluye los siguientes nombres de campo, como en el ejemplo anterior. Los valores de parámetro correspondientes se rellenarán automáticamente:

    • Target field
    • Source field
    • Type
    • Decimals/Length
    • Alias
    • Script

  • La herramienta calcula nuevos campos usando campos existentes proporcionando un campo de script en la tabla de definición.

    Un valor de ejemplo en el campo Script de la tabla de definición es !TOTPOP!/!AREA!, que calcula el campo Population Density. Los nombres de campo deben estar entre signos de exclamación.

  • La herramienta puede crear campos adicionales que dependen de otros cálculos de campo. Por ejemplo, el campo Bev_Index se calcula con el campo Bev_Per_Capita, que también se calcula al ejecutar la herramienta.

  • Utilice el parámetro Archivo de script para varios cálculos de Python de línea. Para usar un archivo de script, cree un archivo con las funciones de Python y haga referencia a las funciones en la tabla de definición.

    A continuación, se muestra un ejemplo de código de script para un campo de destino llamado Bev_Per_Capita:

    • Un campo llamado Script en el valor del parámetro Tabla de definición de esquema de salida con el valor e Bev_Per_Capita(!Bev_Total!, !TOTPOP!)
    • Un valor del parámetro Archivo de script con la siguiente función:
      def Bev_Per_Capita(Bev_Total, TOTPOP):
          return Bev_Total / TOTPOP

    A continuación, se encuentra un ejemplo en el que se muestra la tabla de atributos antes y después de ejecutar la herramienta:

    Ejemplo de la herramienta Campos de actualización por lotes

Parámetros

EtiquetaExplicaciónTipo de datos
Tabla de entrada

Tabla o clase de entidad de entrada.

Table View
Tabla de Salida

La tabla o clase de entidad de salida que contiene los campos actualizados.

Table
Tabla de definición de esquema de salida

Una tabla que contiene las definiciones de campo y los cálculos que se utilizarán para crear la salida.

Table View
Archivo de script
(Opcional)

Un archivo Python que almacena varias funciones de Python de línea para realizar cálculos para los campos del parámetro Tabla de salida.

File
Nombre de campo de salida
(Opcional)

El nombre de campo de la tabla de definición que contiene los nombres de campo de destino para la tabla de salida.

Field
Nombre de campo de origen
(Opcional)

El nombre de campo de la tabla de definición que contiene los nombres de campo de origen de la tabla de entrada.

Field
Tipo de campo de salida
(Opcional)

El nombre de campo de la tabla de definición que define los tipos de datos para la tabla de salida.

Field
Longitud o decimales del campo de salida
(Opcional)

El nombre de campo de la tabla de definición que define el número de decimales o la longitud del campo para los campos de salida.

Field
Alias de campo de salida
(Opcional)

El nombre de campo de la tabla de definición que define los nombres de alias para los campos de la tabla de salida.

Field
Script de campo de salida
(Opcional)

El nombre de campo de la tabla de definición que define los cálculos para los campos de salida.

Field

arcpy.management.BatchUpdateFields(in_table, out_table, field_definition_table, {script_file}, {output_field_name}, {source_field_name}, {output_field_type}, {output_field_decimals_or_length}, {output_field_alias}, {output_field_script})
NombreExplicaciónTipo de datos
in_table

Tabla o clase de entidad de entrada.

Table View
out_table

La tabla o clase de entidad de salida que contiene los campos actualizados.

Table
field_definition_table

Una tabla que contiene las definiciones de campo y los cálculos que se utilizarán para crear la salida.

Table View
script_file
(Opcional)

Un archivo Python que almacena varias funciones de Python de línea para realizar cálculos para los campos del parámetro out_table.

File
output_field_name
(Opcional)

El nombre de campo de la tabla de definición que contiene los nombres de campo de destino para la tabla de salida.

Field
source_field_name
(Opcional)

El nombre de campo de la tabla de definición que contiene los nombres de campo de origen de la tabla de entrada.

Field
output_field_type
(Opcional)

El nombre de campo de la tabla de definición que define los tipos de datos para la tabla de salida.

Field
output_field_decimals_or_length
(Opcional)

El nombre de campo de la tabla de definición que define el número de decimales o la longitud del campo para los campos de salida.

Field
output_field_alias
(Opcional)

El nombre de campo de la tabla de definición que define los nombres de alias para los campos de la tabla de salida.

Field
output_field_script
(Opcional)

El nombre de campo de la tabla de definición que define los cálculos para los campos de salida.

Field

Muestra de código

Ejemplo de BatchUpdateFields (script independiente)

El siguiente script de la ventana de Python demuestra cómo utilizar la función BatchUpdateFields en un script independiente.

arcpy.management.BatchUpdateFields("zip_codes", "MyProject.gdb\zip_codes_BatchUpdateFields", "DATA_TRANSFORMATION.csv", r"C:\BatchUpdate\script.py", "TARGET", "SOURCE", "DATATYPE", "DECIMALS", "ALIAS", "SCRIPT")

Información de licenciamiento

  • Basic: Sí
  • Standard: Sí
  • Advanced: Sí

Temas relacionados