Удалить идентичные (Delete Identical) (Управление данными)
Резюме
Удаляет записи в классе объектов или таблице, которые имеют одинаковые записи в списке полей. Если выбрано поле Форма (Shape), будет сопоставлена геометрия объектов.
Инструмент Найти идентичные (Find Identical) может использоваться для создания отчета о том, какие записи считаются одинаковыми, без удаления этих записей.
Использование
-
Этот инструмент находит одинаковые записи на основе значений входных полей, затем удаляет все, кроме одной идентичной записи из каждого набора. Можно сравнивать значения из нескольких полей входного набора данных. Если определено более одного поля, записи сопоставляются по значениям в первом поле, затем по значениям второго поля, и т.д.
-
Если вы хотите сравнить геометрию объектов в классе объектов или слое и найти идентичные по местоположению, выберите поле Форма (Shape) в параметре Поля (Field(s)). Параметры Допуск XY (XY Tolerance) и Допуск Z (Z Tolerance) допустимы, только если в качестве одного из входных полей выбрано поле Форма (Shape).
Этот инструмент изменяет входные данные. Более подробно о стратегиях предотвращения неожиданных изменений данных см. в разделе Инструменты, не создающие выходных данных (Tools with no outputs).
Синтаксис
Параметр | Объяснение | Тип данных |
in_dataset |
Таблица или класс пространственных объектов, одинаковые записи в которых будут удалены. | Table View |
fields [fields,...] | Поле или поля, значения которых будут сравниваться для нахождения идентичных записей. | Field |
xy_tolerance (дополнительно) |
Значение допуска xy, в пределах которого вокруг каждой вершины объекта будет проводиться поиск идентичных вершин соседних объектов. | Linear unit |
z_tolerance (дополнительно) |
Значение допуска z, в пределах которого вокруг каждой вершины объекта будет проводиться поиск идентичных вершин соседних объектов. | Double |
Пример кода
В следующем скрипте окна Python продемонстрировано, как используется функция Удалить идентичные (Delete Identical) в окне Python.
import arcpy
arcpy.DeleteIdentical_management("C:/data/fireincidents.shp", ["ZONE", "INTENSITY"])
В следующем автономном скрипте продемонстрировано, как используется функция Удалить идентичные (Delete Identical) для определения дублированных записей таблицы или класса пространственных объектов.
# Name: DeleteIdentical_Example2.py
# Description: Delete identical features in a dataset based on Shape (geometry) and a TEXT field.
# Import system modules
import arcpy
from arcpy import env
env.overwriteOutput = True
# Set workspace environment
env.workspace = "C:/data/sbfire.gdb"
# Set input feature class
in_dataset = "fireincidents"
# Set the field upon which the identicals are found
fields = ["Shape", "INTENSITY"]
# Set the XY tolerance within which to identical records to be deleted
xy_tol = "0.02 Miles"
# Set the Z tolerance to default
z_tol = ""
# Execute Delete Identical
arcpy.DeleteIdentical_management(in_dataset, fields, xy_tol, z_tol)