ラベル | 説明 | データ タイプ |
入力フィーチャ | 削除するフィーチャを含むフィーチャクラス、シェープファイル、またはレイヤー。 | Feature Layer |
派生した出力
ラベル | 説明 | データ タイプ |
出力フィーチャクラス | 更新されたフィーチャクラス。 | フィーチャ レイヤー |
すべてのフィーチャまたは選択したフィーチャのサブセットを入力から削除します。
入力フィーチャがフィーチャクラスの場合は、すべての行が削除されます。入力フィーチャが、フィーチャが選択されていない状態のレイヤーの場合は、すべてのフィーチャが削除されます。
このツールでは、フィーチャが選択された状態のレイヤーを入力として指定すると、選択されているそれらのフィーチャのみが削除されます。フィーチャクラスから特定のフィーチャを削除するには、[フィーチャ レイヤーの作成 (Make Feature Layer)] ツールを使用するか、フィーチャクラスを画面に追加して、フィーチャクラスをレイヤーに変換します。その後、[属性検索 (Select Layer By Attribute)] または [空間検索 (Select Layer By Location)] ツールを使用するか、マップ レイヤーの検索または [マップ] タブの [選択] グループの選択ツールを使用したフィーチャの対話的な選択を行って、選択を適用することができます。
レイヤーが入力のときに、そのレイヤーでフィーチャが選択されていない場合は、すべてのフィーチャが削除されます。フィーチャクラスが入力の場合は、すべてのフィーチャが削除されます。
多数の行を含むフィーチャクラスからすべての行を削除する場合は、時間がかかる可能性があります。フィーチャクラスのすべての行を削除したい場合は、[テーブルの切詰め (Truncate Table)] ツールの使用を検討する必要があります。このツールを使用する際の重要な注意事項については、[テーブルの切詰め (Truncate Table)] ツールのマニュアルをご参照ください。
このツールは [入力フィーチャ] のジオメトリと属性の両方を削除します。
このツールでは、範囲の環境が適用されます。出力範囲の環境内にあるか、出力範囲の環境に重なるフィーチャのみが削除されます。入力レイヤーでフィーチャが選択されている場合は、選択されているフィーチャのうち、出力範囲内にあるか、出力範囲に重なるものだけが削除されます。
ラベル | 説明 | データ タイプ |
入力フィーチャ | 削除するフィーチャを含むフィーチャクラス、シェープファイル、またはレイヤー。 | Feature Layer |
ラベル | 説明 | データ タイプ |
出力フィーチャクラス | 更新されたフィーチャクラス。 | フィーチャ レイヤー |
arcpy.management.DeleteFeatures(in_features)
名前 | 説明 | データ タイプ |
in_features | 削除するフィーチャを含むフィーチャクラス、シェープファイル、またはレイヤー。 | Feature Layer |
名前 | 説明 | データ タイプ |
out_feature_class | 更新されたフィーチャクラス。 | フィーチャ レイヤー |
次の Python ウィンドウ スクリプトは、イミディエイト モードで DeleteFeatures ツールを使用する方法を示しています。
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.CopyFeatures_management("majorrds.shp", "C:/output/output.gdb/majorrds2")
arcpy.DeleteFeatures_management("C:/output/output.gdb/majorrds2")
次のスタンドアロン スクリプトは、式に基づいてフィーチャを削除するために DeleteFeatures ツールを使用する方法を示しています。
# Name: DeleteFeatures_Example2.py
# Description: Delete features from a feature class based on an expression
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data/airport.gdb"
# Set local variables
inFeatures = "parcels"
outFeatures = "C:/output/output.gdb/new_parcels"
tempLayer = "parcelsLayer"
expression = arcpy.AddFieldDelimiters(tempLayer, "PARCEL_ID") + " = 'Cemetery'"
# Execute CopyFeatures to make a new copy of the feature class
arcpy.CopyFeatures_management(inFeatures, outFeatures)
# Execute MakeFeatureLayer
arcpy.MakeFeatureLayer_management(outFeatures, tempLayer)
# Execute SelectLayerByAttribute to determine which features to delete
arcpy.SelectLayerByAttribute_management(tempLayer, "NEW_SELECTION",
expression)
# Execute GetCount and if some features have been selected, then
# execute DeleteFeatures to remove the selected features.
if int(arcpy.GetCount_management(tempLayer)[0]) > 0:
arcpy.DeleteFeatures_management(tempLayer)