Incorporar (Administración de datos)

Resumen

Adjunta múltiples datasets de entrada a un dataset de destino existente, u opcionalmente lo actualiza con ellos. Los datasets de entrada pueden ser clases de entidad, tablas, shapefiles, rásteres o clases de entidad de anotación o de dimensión.

Para combinar datasets de entrada en un nuevo dataset de salida, utilice la herramienta Fusionar.

Ilustración

Ilustración de la herramienta Incorporar

Uso

  • Utilice esta herramienta para agregar nuevas entidades u otros datos de varios datasets a un dataset existente. Esta herramienta puede adjuntar clases de entidad de punto, de línea o poligonal, tablas, rásteres o clases de entidad de anotación o de dimensión a un dataset existente del mismo tipo. Por ejemplo, se pueden adjuntar varias tablas a una tabla existente, o varios rásteres a un dataset ráster existente, pero una clase de entidad de línea no se puede adjuntar a una clase de entidad de punto.

  • Use el parámetro Mapa de campo para controlar la forma en que se transfiere la información de los atributos desde los campos del dataset de entrada al dataset de destino. El parámetro Mapa de campo solo se puede utilizar si se ha especificado Usar el Mapa de campo para conciliar las diferencias de esquema en el parámetro Tipo de esquema.

  • Use el parámetro Mapa de campo para asignar o hacer corresponder los campos de los dataset de entrada con los campos del dataset de destino.

    • Use una acción para determinar cómo se asignarán los valores de uno o varios campos del dataset de entrada en un solo campo del dataset de destino.
    • Las acciones disponibles son Primera, Última, Concatenación, Suma, Valor medio, Mediana, Modo, Mínimo, Máximo, Desviación estándar y Recuento.
    • Al usar la acción Concatenar, pude especificar un delimitador tal como una coma u otro carácter. Haga clic en el inicio del cuadro de texto Delimitador para añadir los caracteres delimitadores.
    • Desviación estándar no es una opción válida para los valores de entrada únicos.
    • Use el botón Trocear texto en los campos de origen de texto para seleccionar qué caracteres de un valor de entrada se extraerán al campo de destino. Para acceder al botón Trocear texto, pase el cursor del ratón por encima de un campo de texto de la lista de campos de entrada; a continuación, especifique las posiciones de los caracteres de inicio y fin.
    • Los campos también se pueden asignar mediante scripts de Python.

  • Esta herramienta no planarizará las entidades cuando las agregue al dataset de destino. Todas las entidades tanto de la clase de entidad de entrada como de la clase de entidad de destino permanecerán intactas después de adjuntar, incluso si se superponen. Para combinar o planarizar geometrías de entidad, utilice la herramienta Combinación.

  • Si el parámetro Tipo de coincidencia de campos está establecido como Los campos de entrada deben coincidir con los campos de destino, el esquema de los datasets de entrada debe coincidir con el del dataset de destino para poder incorporar las entidades.

    Si el parámetro Tipo de coincidencia de campos está establecido como Usar el Mapa de campo para conciliar las diferencias de campo, no es necesario que los esquemas coincidan. Los campos del dataset de entrada que no coincidan con los campos del dataset de destino no se asignarán al dataset de destino, a menos que la asignación esté establecida de manera en el parámetro Mapa de campo. Los campos en el dataset de destino no asignados a campos de los datasets de entrada contendrán valores nulos.

    Si el parámetro Tipo de coincidencia de campos se establece como Omitir y emitir un mensaje de advertencia si el esquema no coincide, el esquema de los datasets de entrada debe coincidir con el del dataset de destino para las entidades que se van a incorporar. Si un dataset de entrada contiene campos que no coinciden con los campos del dataset de destino, ese dataset de entrada se omitirá.

  • Dado que los datos de los datasets de entrada se escriben en un dataset destino existente con un esquema predefinido, no puede usar el parámetro Mapa de campo para añadir o eliminar campos del dataset destino.

  • Puede usar esta herramienta para insertar nuevos registros y actualizar los registros existentes en un dataset destino en la misma operación (equivalente a una operación de base de datos de UPSERT). Use el parámetro Campos coincidentes para actualizar para especificar que los campos del dataset de entrada coincidan con los campos del dataset destino. Para los registros con valores de campos coincidentes, cualquier campo del registro destino se actualizará con los valores de los campos con el mismo nombre en el registro de entrada. La geometría se actualizará si el parámetro Actualizar geometría está activado.

  • Los datasets de entrada y destino pueden tener referencias espaciales diferentes. Cuando esto sucede, la herramienta proyecta las entidades de entrada en el sistema de coordenadas del destino. Para obtener los mejores resultados, especifique una transformación geográfica adecuada mediante el entorno Transformaciones geográficas. Si el dataset destino es una capa de mapa, la herramienta podrá aplicar una transformación predeterminada. En Python no existen las transformaciones predeterminadas.

  • Esta herramienta no realiza ajuste de bordes; no se realizará ningún ajuste en la geometría de las entidades.

  • Las capas de mapa se pueden utilizar como valores de los parámetros de los Datasets de entrada. Si una capa tiene una selección, solo se usarán los registros seleccionados (entidades o filas de tabla).

  • En esta herramienta no se pueden utilizar varias capas de entrada con el mismo nombre. Para evitar esta limitación, utilice el botón Examinar del panel Geoprocesamiento para examinar las rutas completas de los valores de cada uno de los Datasets de entrada.

  • Para utilizar el parámetro Subtipo, el dataset de destino debe tener un campo de subtipo definido y códigos de subtipo asignados. En el parámetro Subtipo, proporcione una descripción del subtipo para asignar este subtipo a todos los datos nuevos que se adjuntan al dataset de destino.

  • Esta herramienta puede usarse directamente en el data store de back end, el servidor o la base de datos para garantizar el rendimiento óptimo de las capas de entidades web. En el caso de servicios de entidades que hacen referencia a una geodatabase, esta herramienta puede usarse con una conexión de base de datos para llevar a cabo grandes operaciones de carga de datos directamente sobre la base de datos subyacente. En el caso de los servicios alojados en ArcGIS Enterprise, puede utilizar la operación append de la página de elementos de la capa de entidades o de API REST de ArcGIS.

    Para un rendimiento óptimo de los servicios alojados en ArcGIS Online, los administradores y propietarios del servicio pueden utilizar esta herramienta de geoprocesamiento con API REST de ArcGIS cuando la propiedad supportAppend sea true. Las capacidades de incorporación de servicio de entidades deben estar habilitadas para que los usuarios no administrativos puedan utilizar la herramienta Incorporar con API REST de ArcGIS.

Parámetros

EtiquetaExplicaciónTipo de datos
Datasets de entrada

Datasets de entrada cuyos datos se incorporarán al dataset de destino. Los datasets de entrada pueden ser clases de entidad de punto, de línea o poligonal, tablas, rásteres, clases de entidad de anotación o clases de entidad de dimensión.

Las tablas y clases de entidad se pueden combinar. Si se incorpora una clase de entidad a una tabla, los atributos se transfieren; no obstante, las entidades se eliminarán. Si se incorpora una tabla a una clase de entidad, las filas de la tabla de entrada tendrán una geometría nula.

Table View; Raster Layer
Dataset destino

El dataset existente al que se incorporarán los datos de los datasets de entrada.

Table View; Raster Layer
Tipo de coincidencia de campos
(Opcional)

Especifica si los campos de los datasets de entrada deben coincidir con los campos de los datasets de destino para que se incorporen los datos.

  • Los campos de entrada deben coincidir con los campos de destinoLos campos de los datasets de entrada deben coincidir con los campos del dataset de destino. Se devolverá un error si los campos no coinciden.
  • Utilizar el mapa de campo para conciliar las diferencias de campoNo es necesario que los campos de los datasets de entrada coincidan con los campos del dataset de destino. Los campos de los datasets de entrada que no coincidan con los campos del dataset de destino no se asignarán al dataset de destino, a menos que la asignación esté establecida de manera explícita en el parámetro Mapa de campo.
  • Omitir y emitir un mensaje de advertencia si el esquema no coincideLos campos de los datasets de entrada deben coincidir con los campos del dataset de destino. Si alguno de los datasets de entrada contiene campos que no coinciden con los campos del dataset de destino, ese dataset de entrada se omitirá y se generará un mensaje de advertencia.
String
Mapa de campo
(Opcional)

El parámetro de mapa de campo controla la transferencia o la correspondencia de los campos de los datasets de entrada con el dataset de destino. Solo puede utilizarse si el parámetro Tipo de coincidencia de campos tiene el valor Utilizar el mapa de campo para conciliar las diferencias de campo.

Dado que los datasets de entrada se incorporan a un dataset de destino existente que tiene campos predefinidos, no es posible agregar, eliminar ni cambiar el tipo de los campos del mapa de campo.

El mapa de campo puede usarse para combinar valores de dos o más campos de entrada en un solo campo de salida.

Field Mappings
Subtipo
(Opcional)

Descripción del subtipo que se asignará a todos los datos nuevos incorporados al dataset de destino.

String
Expresión
(Opcional)

La expresión SQL que se usará para seleccionar un subconjunto de los registros de los datasets de entrada. Si se especifican varios datasets de entrada, se evaluarán utilizando la expresión. Si no hay ningún registro que coincida con la expresión de un dataset de entrada, no se incorporará ningún registro de ese dataset al dataset de destino.

Para obtener más información sobre la sintaxis SQL, consulte Referencia SQL para las expresiones de consulta utilizadas en ArcGIS.

SQL Expression
Campos coincidentes para actualizar
(Opcional)

Los campos de los datasets de entrada que se usarán para buscar la coincidencia con los campos del dataset de destino. Si los valores de esos campos coinciden, los campos del dataset de destino se actualizarán con los valores de los registros de los datasets de entrada.

Value Table
Actualizar geometría
(Opcional)

Determina si la geometría del dataset de destino se actualizará con la geometría del dataset de entrada si los valores de campo del parámetro Campos coincidentes para actualizar coinciden.

  • Activado: la geometría del dataset de destino se actualizará si los valores de campo del parámetro Campos coincidentes para actualizar coinciden.
  • Desactivado: la geometría no se actualizará. Esta es la opción predeterminada.
Boolean

Salida derivada

EtiquetaExplicaciónTipo de datos
Dataset objetivo actualizado

El dataset de destino actualizado.

Table View; Raster Layer

arcpy.management.Append(inputs, target, {schema_type}, {field_mapping}, {subtype}, {expression}, {match_fields}, {update_geometry})
NombreExplicaciónTipo de datos
inputs
[inputs,...]

Datasets de entrada cuyos datos se incorporarán al dataset de destino. Los datasets de entrada pueden ser clases de entidad de punto, de línea o poligonal, tablas, rásteres, clases de entidad de anotación o clases de entidad de dimensión.

Las tablas y clases de entidad se pueden combinar. Si se incorpora una clase de entidad a una tabla, los atributos se transfieren; no obstante, las entidades se eliminarán. Si se incorpora una tabla a una clase de entidad, las filas de la tabla de entrada tendrán una geometría nula.

Table View; Raster Layer
target

El dataset existente al que se incorporarán los datos de los datasets de entrada.

Table View; Raster Layer
schema_type
(Opcional)

Especifica si los campos de los datasets de entrada deben coincidir con los campos de los datasets de destino para que se incorporen los datos.

  • TESTLos campos de los datasets de entrada deben coincidir con los campos del dataset de destino. Se devolverá un error si los campos no coinciden.
  • NO_TESTNo es necesario que los campos de los datasets de entrada coincidan con los campos del dataset de destino. Los campos de los datasets de entrada que no coincidan con los campos del dataset de destino no se asignarán al dataset de destino, a menos que la asignación esté establecida de manera explícita en el parámetro Mapa de campo.
  • TEST_AND_SKIPLos campos de los datasets de entrada deben coincidir con los campos del dataset de destino. Si alguno de los datasets de entrada contiene campos que no coinciden con los campos del dataset de destino, ese dataset de entrada se omitirá y se generará un mensaje de advertencia.
String
field_mapping
(Opcional)

El parámetro de mapa de campo controla la transferencia o la correspondencia de los campos de los datasets de entrada con el dataset de destino. Solo puede usarse si el parámetro schema_type tiene el valor NO_TEST.

Dado que los datasets de entrada se incorporan a un dataset de destino existente que tiene campos predefinidos, no es posible agregar, eliminar ni cambiar el tipo de los campos del mapa de campo.

El mapa de campo puede usarse para combinar valores de dos o más campos de entrada en un solo campo de salida.

En Python, utilice la clase de FieldMappings para definir este parámetro.

Field Mappings
subtype
(Opcional)

Descripción del subtipo que se asignará a todos los datos nuevos incorporados al dataset de destino.

String
expression
(Opcional)

La expresión SQL que se usará para seleccionar un subconjunto de los registros de los datasets de entrada. Si se especifican varios datasets de entrada, se evaluarán utilizando la expresión. Si no hay ningún registro que coincida con la expresión de un dataset de entrada, no se incorporará ningún registro de ese dataset al dataset de destino.

Para obtener más información sobre la sintaxis SQL, consulte Referencia SQL para las expresiones de consulta utilizadas en ArcGIS.

SQL Expression
match_fields
[[target_field, input_field],...]
(Opcional)

Los campos de los datasets de entrada que se usarán para buscar la coincidencia con los campos del dataset de destino. Si los valores de esos campos coinciden, los campos del dataset de destino se actualizarán con los valores de los registros de los datasets de entrada.

Value Table
update_geometry
(Opcional)

Determina si la geometría del dataset de destino se actualizará con la geometría del dataset de entrada si los valores de campo del parámetro match_fields coinciden.

  • UPDATE_GEOMETRYLa geometría del dataset de destino se actualizará si los valores de campo del parámetro match_fields coinciden.
  • NOT_UPDATE_GEOMETRYLa geometría no se actualizará. Esta es la opción predeterminada.
Boolean

Salida derivada

NombreExplicaciónTipo de datos
output

El dataset de destino actualizado.

Table View; Raster Layer

Muestra de código

Ejemplo 1 de Incorporar (ventana de Python)

El siguiente script de la ventana de Python demuestra cómo utilizar la función Append en el modo intermedio.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.management.Append(["north.shp", "south.shp", "east.shp", "west.shp"], 
                        "wholecity.shp", "TEST")
Ejemplo 2 de Incorporar (ventana de Python)

El siguiente script de la ventana de Python demuestra cómo utilizar la función Append con los parámetros match_fields y update_geometry en el modo intermedio.

import arcpy
arcpy.env.workspace = "C:/data/zoning.gdb"
arcpy.management.Append("Zoning_update_2040", "Zoning_2020", "TEST", 
                        match_fields=[["ZONEID", "ZONEID"]], update_geometry="UPDATE_GEOMETRY")
Ejemplo 3 de Incorporar (script independiente)

El siguiente script muestra cómo utilizar la función Append.

# Name: Append.py
# Description: Use the Append tool to combine several polygon feature classes

# Import system modules 
import arcpy
import os

# Set environment settings
arcpy.env.workspace = "C:/data/towns.gdb"

# Set local variables
outLocation = "C:/data/output.gdb"
outName = "MA_towns.shp"
schemaType = "NO_TEST"
fieldMappings = ""
subtype = ""

# Process: Append to an existing "amherst" polygon feature class
target = os.path.join(outLocation, "amherst")

# All polygon FCs in the workspace are MA town FCs, you want to append these
# to the target FC. The list will resemble ["amherst", "hadley", "pelham",
# "coldspring"]

fcList = arcpy.ListFeatureClasses("", "POLYGON")

# Create FieldMappings object to manage merge output fields
fieldMappings = arcpy.FieldMappings()

# Add the target table to the field mappings class to set the schema
fieldMappings.addTable(target)

# Add input fields for the town name to TOWNNAME field that matches the 
# target dataset since each input dataset has a different field name for 
# this info
fldMap = arcpy.FieldMap()
fldMap.addInputField("amherst","TOWNNAME")
fldMap.addInputField("hadley","NAME")
fldMap.addInputField("pelham","TOWN_NAME")
fldMap.addInputField("coldspring","TOWN")

# Set name of new output field "TOWNNAME"
townName = fldMap.outputField
townName.name, townName.aliasName, townName.type = "TOWNNAME", "TOWNNAME", "TEXT"
fldMap.outputField = townName

# Add output field to field mappings object
fieldMappings.addFieldMap(fldMap)

# Do the same for the POPULATION field
fldMap = arcpy.FieldMap()
fldMap.addInputField("amherst","POPULATION")
fldMap.addInputField("hadley","POP")
fldMap.addInputField("pelham","POP_2010")
fldMap.addInputField("coldspring","POP")

# Set name of new output field "POPULATION"
pop = fldMap.outputField
pop.name, pop.aliasName, pop.type = "POPULATION", "POPULATION", "LONG"
fldMap.outputField = pop

# Add output field to field mappings object
fieldMappings.addFieldMap(fldMap)

# Process: Append the feature classes to the target feature class
arcpy.management.Append(fcList, os.path.join(outLocation, "amherst"), schemaType, 
                        fieldMappings, subtype)

Entornos

Casos especiales

Conservar Id. globales

En el caso de la herramienta Incorporar, este entorno solo se aplica a los datos de las geodatabases corporativas y solo funcionará con los datos que tengan un campo de Id. global con un índice único. Si el campo de Id. global no tiene un índice único, la herramienta puede generar un error. Para agregar un índice único a un campo de Id. global, puede usar la herramienta Agregar índice de atributos.

Información de licenciamiento

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

Temas relacionados