Fusionar (Administración de datos)

Resumen

Combina varios datasets de entrada en un único dataset de salida nuevo. Esta herramienta puede combinar tablas o clases de entidad de punto, de línea o de polígono.

Utilice la herramienta Incorporar para combinar datasets de entrada con un dataset existente.

Ilustración

Ilustración de la herramienta Fusionar

Uso

  • Utilice esta herramienta para combinar datasets de varias fuentes en un nuevo dataset de salida único. Todas las clases de entidad de entrada deben ser del mismo tipo de geometría. Por ejemplo, se pueden fusionar varias clases de entidad de punto, pero no se puede fusionar una clase de entidad de línea con una clase de entidad poligonal.

    Las tablas y clases de entidad se pueden combinar en un solo dataset de salida. El tipo de salida lo determina la primera entrada. Si la primera entrada es una clase de entidad,d la salida será una clase de entidad. Si la primera entrada es una tabla, la salida será una tabla. Si se fusiona una tabla a una clase de entidad, las filas de la tabla de entrada tendrán una geometría nula.

  • Utilice el parámetro Modo de coincidencia de campos para especificar cómo se transferirán los campos de los datasets de entrada al dataset de salida. De forma predeterminada, la herramienta asignará campos del mismo nombre juntos, mientras que los campos que sean exclusivos de las entradas se conservarán en la salida. Utilice el parámetro Mapa de campo si se especifica la opción Utilizar el mapa de campo para conciliar las diferencias de campo. Si todos los datasets de entrada tienen el mismo esquema, utilice la opción Utilizar solo el esquema del primer dataset para obtener un mejor rendimiento.

  • Use el parámetro Mapa de campo para gestionar los campos y su contenido en el dataset de salida.

    • Añada y elimine campos de la lista de campos, reordene la lista de campos y cambie el nombre de los campos.
    • El tipo de datos predeterminado de un campo de salida es el mismo que el tipo de datos del primer campo de entrada (de ese nombre) que encuentra. Puede cambiar el tipo de datos a otro tipo de datos válido.
    • Use una acción para determinar cómo los valores de uno o varios campos de entrada se fusionarán en un solo campo de salida. 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.
    • Utilice la opción Exportar Exportar para guardar un mapa de campo como archivo .fieldmap.
    • Utilice la opción Cargar Import para cargar un archivo .fieldmap. La capa de entidades o el dataset especificado en el archivo debe coincidir con el dataset utilizado en la herramienta. De lo contrario, el parámetro Mapa de campo se restablecerá.
    • Use el botón Trocear texto Cortar en los campos de origen de texto para seleccionar qué caracteres de un valor de entrada se extraerán al campo de salida. 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 en el script de Python.

  • Esta herramienta no divide ni modifica las geometrías de los datasets de entrada. Todas las entidades de los datasets de entrada permanecerán intactas en el dataset de salida, aún si las entidades se superponen. Para combinar o planarizar geometrías de entidad, utilice la herramienta Combinación.

  • Si se prevé fusionar las clases de entidades, el dataset de salida estará en el sistema de coordenadas de la primera clase de entidad especificado para el parámetro Datasets de entrada, a menos que se establezca el entorno Sistema de coordenadas de salida.

  • Esta herramienta no admite clases de entidad de anotación. Use la herramienta Incorporar clases de entidad de anotación para combinar clases de entidad de anotación.

  • Esta herramienta no admite datasets ráster. Utilice la herramienta De mosaico a nuevo ráster para combinar varios rásteres en un nuevo ráster de salida.

Parámetros

EtiquetaExplicaciónTipo de datos
Datasets de entrada

Los datasets de entrada que se fusionarán en un nuevo dataset de salida. Los datasets de entrada pueden ser tablas o clases de entidades de punto, de línea o de polígono. Todas las clases de entidad de entrada deben ser del mismo tipo de geometría.

Las tablas y clases de entidad se pueden combinar en un solo dataset de salida. El tipo de salida lo determina la primera entrada. Si la primera entrada es una clase de entidad,d la salida será una clase de entidad. Si la primera entrada es una tabla, la salida será una tabla. Si se fusiona una tabla a una clase de entidad, las filas de la tabla de entrada tendrán una geometría nula.

Table View
Dataset de salida

Dataset de salida que contendrá todos los datasets de entrada combinados.

Feature Class;Table
Mapa de campo
(Opcional)

Utilice el mapa de campo para conciliar las diferencias de esquema y hacer corresponder los campos de atributos entre diversos datasets. La salida incluirá de forma predeterminada todos los campos de los datasets de entrada.

Use el campo de mapa para añadir, borrar, cambiar el nombre y reordenar los campos, así como para cambiar otras propiedades de los campos.

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

Field Mappings
Agregar información de origen a la salida
(Opcional)

Especifica si la información de origen se agregará al dataset de salida en un nuevo campo de texto MERGE_SRC. Los valores del campo MERGE_SRC indicarán el nombre de la capa o la ruta del dataset de entrada que son el origen de cada registro de la salida.

  • Desactivado: no se agregará información del origen al dataset de salida en un campo MERGE_SRC. Esta es la opción predeterminada.
  • Activado: se agregará información del origen al dataset de salida en un campo MERGE_SRC.
Boolean
Modo de coincidencia de campos
(Opcional)

Especifica cómo se transferirán los campos del dataset de entrada al dataset de salida.

  • Generar automáticamente campos consolidados a partir de todas las entradasLos campos que tengan el mismo nombre se representan automáticamente juntos en la salida. Los campos que sean exclusivos de las entradas se conservan en la salida. Esta es la opción predeterminada.
  • Utilizar el mapa de campo para conciliar las diferencias de campoLos campos de salida vienen determinados por el valor del parámetro Mapa de campo.
  • Utilizar solo el esquema del primer datasetSe utiliza el esquema del primer dataset de entrada. Este modo es adecuado si todos los datasets de entrada tienen el mismo esquema.
String

arcpy.management.Merge(inputs, output, {field_mappings}, {add_source}, {field_match_mode})
NombreExplicaciónTipo de datos
inputs
[inputs,...]

Los datasets de entrada que se fusionarán en un nuevo dataset de salida. Los datasets de entrada pueden ser tablas o clases de entidades de punto, de línea o de polígono. Todas las clases de entidad de entrada deben ser del mismo tipo de geometría.

Las tablas y clases de entidad se pueden combinar en un solo dataset de salida. El tipo de salida lo determina la primera entrada. Si la primera entrada es una clase de entidad,d la salida será una clase de entidad. Si la primera entrada es una tabla, la salida será una tabla. Si se fusiona una tabla a una clase de entidad, las filas de la tabla de entrada tendrán una geometría nula.

Table View
output

Dataset de salida que contendrá todos los datasets de entrada combinados.

Feature Class;Table
field_mappings
(Opcional)

Utilice el mapa de campo para conciliar las diferencias de esquema y hacer corresponder los campos de atributos entre diversos datasets. La salida incluirá de forma predeterminada todos los campos de los datasets de entrada.

Use el campo de mapa para añadir, borrar, cambiar el nombre y reordenar los campos, así como para cambiar otras propiedades de los campos.

El mapa de campo también 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
add_source
(Opcional)

Especifica si la información de origen se agregará al dataset de salida en un nuevo campo de texto MERGE_SRC. Los valores del campo MERGE_SRC indicarán el nombre de la capa o la ruta del dataset de entrada que son el origen de cada registro de la salida.

  • NO_SOURCE_INFONo se agregará información del origen al dataset de salida en un campo MERGE_SRC. Esta es la opción predeterminada.
  • ADD_SOURCE_INFOSe agregará información del origen al dataset de salida en un campo MERGE_SRC.
Boolean
field_match_mode
(Opcional)

Especifica cómo se transfieren los campos del dataset de entrada al dataset de salida

  • AUTOMATICLos campos que tengan el mismo nombre se representan automáticamente juntos en la salida. Los campos que sean exclusivos de las entradas se conservan en la salida. Esta es la opción predeterminada.
  • MANUAL_EDITLos campos de salida vienen determinados por el valor del parámetro field_mappings.
  • USE_FIRST_SCHEMASe utiliza el esquema del primer dataset de entrada. Este modo es adecuado si todos los datasets de entrada tienen el mismo esquema.
String

Muestra de código

Ejemplo 1 de Merge (ventana de Python)

El siguiente script de la ventana de Python muestra cómo utilizar la función Merge:

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.management.Merge(["majorrds.shp", "Habitat_Analysis.gdb/futrds"], 
                       "C:/output/Output.gdb/allroads", "", "ADD_SOURCE_INFO")
Ejemplo 2 de Fusionar (script independiente)

Utilice la función Merge para mover entidades de dos clases de entidad de calle a un solo dataset.

# Name: Merge.py
# Description: Use Merge to move features from two street
#              feature classes into a single dataset with field mapping

# import system modules 
import arcpy

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

# Street feature classes to be merged
oldStreets = "majorrds.shp"
newStreets = "Habitat_Analysis.gdb/futrds"
addSourceInfo = "ADD_SOURCE_INFO"

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

# Add all fields from both oldStreets and newStreets
fieldMappings.addTable(oldStreets)
fieldMappings.addTable(newStreets)

# Add input fields "STREET_NAM" & "NM" into new output field
fldMap_streetName = arcpy.FieldMap()
fldMap_streetName.addInputField(oldStreets, "STREET_NAM")
fldMap_streetName.addInputField(newStreets, "NM")

# Set name of new output field "Street_Name"
streetName = fldMap_streetName.outputField
streetName.name = "Street_Name"
fldMap_streetName.outputField = streetName

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

# Add input fields "CLASS" & "IFC" into new output field
fldMap_streetClass = arcpy.FieldMap()
fldMap_streetClass.addInputField(oldStreets, "CLASS")
fldMap_streetClass.addInputField(newStreets, "IFC")

# Set name of new output field "Street_Class"
streetClass = fldMap_streetClass.outputField
streetClass.name = "Street_Class"
fldMap_streetClass.outputField = streetClass  

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

# Remove all output fields from the field mappings, except fields 
# "Street_Class", "Street_Name", & "Distance"
for field in fieldMappings.fields:
    if field.name not in ["Street_Class", "Street_Name", "Distance"]:
        fieldMappings.removeFieldMap(fieldMappings.findFieldMapIndex(field.name))

# Since both oldStreets and newStreets have field "Distance", no field mapping 
# is required

# Use Merge tool to move features into single dataset
uptodateStreets = "C:/output/Output.gdb/allroads"
arcpy.management.Merge([oldStreets, newStreets], uptodateStreets, fieldMappings, 
                       addSourceInfo)

Información de licenciamiento

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

Temas relacionados