Rechercher les doublons (Gestion des données)
Récapitulatif
Indique tous les enregistrements d'une table ou d'une classe d'entités qui ont des valeurs identiques dans une liste de champs et génère une table qui répertorie ces enregistrements identiques. Si le champ 'Forme' est sélectionné, les géométries de l'entité sont comparées.
L'outil Supprimer l'élément identique permet de rechercher et de supprimer des enregistrements identiques.
Illustration
Utilisation
-
Cet outil recherche des enregistrements identiques en fonction de valeurs de champ en entrée. Les valeurs provenant de plusieurs champs dans le jeu de données en entrée peuvent être comparées. Si plusieurs champs sont indiqués, les enregistrements sont mis en correspondance en fonction des valeurs du premier champ, puis des valeurs du deuxième champ, et ainsi de suite.
-
La table en sortie aura le même nombre d'enregistrements que le jeu de données en entrée et contiendra deux champs : IN_FID et FEAT_SEQ. Les enregistrements identiques ont la même valeur FEAT_SEQ. Les valeurs FEAT_SEQ sont générées par cet outil. Ils n'ont aucun lien avec les identifiants d'objet. Le champ IN_FID permet de joindre la table en sortie au jeu de données en entrée en fonction de FID.
-
Avec une classe d'entités ou une couche d'entités en entrée, sélectionnez le champ 'Forme' dans le paramètre Champ(s) pour comparer des géométries d'entités afin de rechercher des entités identiques par emplacement. Les paramètres Tolérance XY et Tolérance Z ne sont valides que si 'Forme' est sélectionné comme un des champs en entrée.
Syntaxe
Paramètre | Explication | Type de données |
in_dataset |
Table ou classe d'entités pour laquelle les enregistrements identiques seront recherchés. | Table View |
out_dataset |
Table en sortie qui répertorie tous les enregistrements identiques. Cette table sortie comporte le même nombre d'enregistrements que le jeu de données en entrée et contient deux champs : IN_FID et FEAT_SEQ. Les enregistrements identiques ont la même valeur FEAT_SEQ. | Table |
fields [fields,...] | Champ(s) dont les valeurs sont comparées pour rechercher des enregistrements identiques. | Field |
xy_tolerance (Facultatif) |
Tolérance xy qui s'applique à chaque sommet lors de l'évaluation de la présence d'un sommet identique dans une autre entité. Ce paramètre est activé uniquement lorsque 'Forme' est sélectionné comme un des champs. | Linear unit |
z_tolerance (Facultatif) |
Tolérance z qui s'applique à chaque sommet lors de l'évaluation de la présence d'un sommet identique dans une autre entité. Ce paramètre est activé uniquement lorsque 'Forme' est sélectionné comme un des champs. | Double |
Exemple de code
Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction FindIdentical en mode immédiat.
import arcpy # Find identical records based on a text field and a numeric field. arcpy.FindIdentical_management("C:/data/fireincidents.shp", "C:/output/duplicate_incidents.dbf", ["ZONE", "INTENSITY"])
Le script autonome suivant montre comment utiliser la fonction FindIdentical pour identifier les enregistrements en double d'une table ou d'une classe d'entités.
# Name: FindIdentical_Example2.py # Description: Finds duplicate features in a dataset based on location (Shape field) and fire intensity # Author: ESRI import arcpy from arcpy import env env.overwriteOutput = True # Set workspace environment env.workspace = "C:/data/findidentical.gdb" # Set input feature class in_dataset = "fireincidents" # Set the fields upon which the matches are found fields = ["Shape", "INTENSITY"] # Set xy tolerance xy_tol = ".02 Meters" out_table = "duplicate_incidents" # Execute Find Identical arcpy.FindIdentical_management(in_dataset, fields, out_table, xy_tol)