NumPyArrayToFeatureClass

サマリー

NumPy 構造化配列をポイント フィーチャクラスに変換します。

説明

入力配列のフィールド名が出力形式で無効である場合、整合チェックされます。 入力フィールド名のすべての無効な文字は、出力フィールド名では下線 (_) に置き換えられます。 フィールド名の制限は、使用されるデータベースによって異なります。

NumPyArrayToFeatureClass は、overwriteOutput 環境が True に設定されていても、既存のフィーチャクラスを上書きしません。

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.

構文

NumPyArrayToFeatureClass (in_array, out_table, shape_fields, {spatial_reference})
パラメーター説明データ タイプ
in_array

NumPy 構造化配列。

配列には、フィールド名と NumPy dtype が含まれている必要があります。

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

フィーチャクラスの空間参照。 この引数を指定すると、フィーチャが入力の空間参照から投影 (または変換) されます。 指定しないと、入力フィーチャクラスの空間参照が使用されます。 この引数に有効な値は、SpatialReference オブジェクトまたはそれに相当する文字列です。

(デフォルト値は次のとおりです None)

SpatialReference

コードのサンプル

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)

関連トピック