NumPyArrayToFeatureClass

Resumen

Convierte una matriz estructurada NumPy en una clase de entidad de punto.

Debate

Si un nombre de campo de la matriz de entrada no es válido para el formato de salida, se validará. Todos los caracteres no válidos del nombre del campo de entrada se sustituyen por un guion bajo (_) en el nombre del campo de salida. Las restricciones del nombre de campo dependen de la base de datos concreta que se utilice.

NumPyArrayToFeatureClass No sobrescribirá una clase de entidad existente, ni siquiera si el entorno overwriteOutput se establece en Verdadero.

NumPy is a fundamental package for scientific computing in Python, including support for a powerful N-dimensional array object. For more information, see Working with NumPy in ArcGIS.

Sintaxis

NumPyArrayToFeatureClass (in_array, out_table, shape_fields, {spatial_reference})
ParámetroExplicaciónTipo de datos
in_array

A NumPy structured array.

The array must include field names and NumPy dtypes.

NumPyArray
out_table

The output point feature class to which the records from the NumPy array will be written.

String
shape_fields
[shape_fields,...]

A list (or tuple) of field names used to create the feature class's geometry. Coordinates are specified in the order of x, y, z, and m; z-coordinate and m-value fields are optional.

Assuming field names of x, y, z, and m in a numpy array, feature classes could be constructed as below.

import arcpy

# Create a feature class with x,y fields
arcpy.da.NumPyArrayToFeatureClass(array, fc, ("x", "y"))

# Create a feature class with x,y,z fields
arcpy.da.NumPyArrayToFeatureClass(array, fc, ("x", "y", "z"))

# Create a feature class with x,y,m fields
arcpy.da.NumPyArrayToFeatureClass(array, fc, ("x", "y", "", "m"))

# Create a feature class with x,y,z,m fields
arcpy.da.NumPyArrayToFeatureClass(array, fc, ("x", "y", "z", "m"))
String
spatial_reference

The spatial reference of the feature class. When this argument is specified, the feature will be projected (or transformed) from the input's spatial reference. If unspecified, the input feature classes' spatial reference will be used. Valid values for this argument are a SpatialReference object or string equivalent.

(El valor predeterminado es None)

SpatialReference

Muestra de código

Ejemplo de NumPyArrayToFeatureClass
import arcpy
import numpy

outFC = "C:/data/texas.gdb/fd/pointlocations"

# Create a numpy array with an id field, and a field with a tuple
#  of x,y coordinates
array = numpy.array(
    [
        (1, (471316.3835861763, 5000448.782036674)),
        (2, (470402.49348005146, 5000049.216449278)),
    ],
    numpy.dtype([("idfield", numpy.int32), ("XY", "<f8", 2)]),
)

# Define a spatial reference for the output feature class
spatial_ref = arcpy.Describe("C:/data/texas.gdb/fd").spatialReference

# Export the numpy array to a feature class using the XY field to
# represent the output point feature
arcpy.da.NumPyArrayToFeatureClass(array, outFC, ["XY"], spatial_ref)

Temas relacionados