Fusionner (Gestion des données)
Récapitulatif
Agrège des entités en fonction des attributs spécifiés.
Pour en savoir plus sur le fonctionnement de l'outil Fusionner
Illustration
![]() |
![Illustration de la fonction Fusionner Illustration de la fonction Fusionner](0017/GUID-CA3A6243-A572-4D2B-AF49-9647253E269E-web.png)
Utilisation
-
Diverses statistiques permettent de récapituler ou de décrire les attributs des entités qui sont agrégées avec l'outil Fusionner. La statistique utilisée pour récapituler les attributs est ajoutée à la classe d'entités en sortie sous forme de champ unique répondant à la norme d'attribution de nom suivante : type de statistique + trait de soulignement + nom du champ en entrée. Par exemple, si la statistique SUM est appliquée à un champ nommé POP, le champ de sortie portera le nom suivant SUM_POP.
-
L'outil Fusionner permet de créer de très grandes entités dans la classe d'entités en sortie. Tel est notamment le cas lorsqu'un petit nombre de valeurs uniques figurent dans les Champ(s) de fusion ou lors de la fusion de toutes les entités dans une seule entité. Les très grandes entités risquent de poser des problèmes de traitement ou d'affichage et/ou d'altérer les performances lors de leur représentation sur une carte ou de leur modification. Les problèmes peuvent survenir également si la sortie de la fusion a créé une entité à la taille maximale sur un ordinateur, puis que cette sortie a été déplacée vers un ordinateur doté de moins de mémoire disponible. Pour éviter ces problèmes, utilisez l'option SINGLE_PART du paramètre Créer des entités multi-parties pour fractionner les entités multi-parties susceptibles d'être très grandes en de nombreuses entités plus petites. Dans le cas d'entités très volumineuses créées par l'outil Fusion, l'outil Emincer devra peut-être être utilisé pour les fractionner, afin d'éviter des problèmes liés au traitement, à l'affichage ou aux performances.
-
Les valeurs nulles sont exclues de tous les calculs statistiques. Par exemple, la valeur AVERAGE de 10, 5 et NULL est 7,5 ((10+5)/2). L'outil Total (fonction COUNT) retourne le nombre de valeurs comprises dans le calcul statistique, c'est-à-dire 2 dans cet exemple.
-
Cet outil utilise un processus de tuilage pour la gestion des jeux de données très volumineux afin d'améliorer les performances et l'évolutivité. Pour plus de détails, reportez-vous à la rubrique Géotraitement sur jeux de données volumineux.
-
En fonction de la mémoire physique disponible, les entités en entrée pouvant être traitées et fusionnées dans une seule entité en sortie risquent d'être limitées en nombre (et en complexité). Cette limitation risque de provoquer une erreur, car le processus de fusion peut exiger davantage de mémoire que celle disponible. Pour éviter ce problème, Fusionner peut diviser et traiter les entités en entrée à l'aide d'un algorithme de tuilage adaptatif. Pour déterminer les entités devant faire l'objet d'un tuilage, exécutez l'outil Fréquence sur le résultat de cet outil, en spécifiant les mêmes champs que ceux utilisés pour le paramètre Champ(s) de fréquence lors du processus de fusion. Tout enregistrement indiquant une valeur de fréquence de 2 indique un tuilage. Les limites du tuilage sont conservées dans les entités en sortie pour empêcher la création d'entités trop grandes pour être utilisées dans ArcGIS.
Attention :
L'exécution de l'outil Fusionner sur la sortie d'une fusion précédente réduit rarement le nombre d'entités dans la sortie lorsque le traitement initial a divisé et traité les entrées à l'aide du tuilage flexible. La taille maximale de toute entité en sortie est déterminée par la quantité de mémoire disponible au moment de l'exécution. Par conséquent, la sortie qui contient des tuiles est un indicateur que le fait de fusionner davantage avec les ressources disponibles entraînerait un manque de mémoire ou rendrait l'entité inutilisable. En outre, l'exécution de l'outil Fusionner une deuxième fois sur la sortie créée de cette façon peut ralentir considérablement les performances sans pour autant rapporter de bénéfices et peut entraîner une défaillance inattendue.
-
Le bouton Ajouter un champ du paramètre Champ(s) de fusion est uniquement utilisé dans ModelBuilder. Dans ModelBuilder, si l'outil précédent n'a pas été exécuté ou si ses données dérivées n'existent pas, le paramètre Champ(s) de fusion peut ne pas comporter de noms de champ. Le bouton Ajouter un champ permet d'ajouter des champs attendus pour continuer à renseigner la boîte de dialogue et poursuivre la construction du modèle.
-
Le paramètre Lignes non fractionnées ne s'applique, avec les deux options DISSOLVE_LINES et UNSPLIT_LINES, qu'à la ligne en entrée. Lorsque l'option par défaut DISSOLVE_LINES est spécifiée, les lignes sont fusionnées dans une seule entité. Lorsque l'option UNSPLIT_LINES est spécifiée, seules les deux lignes qui ont une extrémité en commun (désignée par "pseudo-nœud") sont fusionnées sur une ligne continue.
Si le type de géométrie Entités en entrée est point ou multi-points et que l'option Créer des entités multi-parties est sélectionnée (dans Python, multi_part défini sur MULTI_PART), la sortie est une classe d'entités multi-points. Sinon, si l'option Créer des entités multi-parties n'est pas sélectionnée (dans Python, multi_part défini sur SINGLE_PART), la sortie est une classe d'entités points.
Syntaxe
Paramètre | Explication | Type de données |
in_features |
Entités à agréger. | Feature Layer |
out_feature_class |
Classe d'entités à créer pour contenir les entités agrégées. | Feature Class |
dissolve_field [dissolve_field,...] (Facultatif) | Champs utilisés pour agréger les entités. Le bouton Ajouter un champ, utilisé uniquement dans ModelBuilder, permet d'ajouter des champs prévus pour terminer la saisie dans la boîte de dialogue et continuer la création du modèle. | Field |
statistics_fields [[field, {statistic_type}],...] (Facultatif) |
Champs et statistiques utilisés pour récapituler les attributs. Les champs attributaires de texte peuvent être récapitulés à l'aide des statistiques FIRST ou LAST. Les champs attributaires numériques peuvent être récapitulés à l'aide de toutes les statistiques. Les valeurs Null sont exclues de tous les calculs statistiques.
| Value Table |
multi_part (Facultatif) |
Indique si les entités multi-parties sont autorisées dans la classe d'entités en sortie.
| Boolean |
unsplit_lines (Facultatif) |
Contrôle le mode de fusion des entités linéaires.
| Boolean |
Exemple de code
Le script de fenêtre Python suivant illustre l'utilisation de l'outil Fusionner en mode immédiat.
import arcpy
from arcpy import env
env.workspace = "C:/data/Portland.gdb/Taxlots"
arcpy.Dissolve_management("taxlots", "C:/output/output.gdb/taxlots_dissolved",
["LANDUSE", "TAXCODE"], "", "SINGLE_PART",
"DISSOLVE_LINES")
Le script autonome suivant illustre l'utilisation de l'outil Fusionner.
# Name: Dissolve_Example2.py
# Description: Dissolve features based on common attributes
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data/Portland.gdb/Taxlots"
# Set local variables
inFeatures = "taxlots"
tempLayer = "taxlotsLyr"
expression = arcpy.AddFieldDelimiters(inFeatures, "LANDUSE") + " <> ''"
outFeatureClass = "C:/output/output.gdb/taxlots_dissolved"
dissolveFields = ["LANDUSE", "TAXCODE"]
# Execute MakeFeatureLayer and SelectLayerByAttribute. This is only to exclude
# features that are not desired in the output.
arcpy.MakeFeatureLayer_management(inFeatures, tempLayer)
arcpy.SelectLayerByAttribute_management(tempLayer, "NEW_SELECTION", expression)
# Execute Dissolve using LANDUSE and TAXCODE as Dissolve Fields
arcpy.Dissolve_management(tempLayer, outFeatureClass, dissolveFields, "",
"SINGLE_PART", "DISSOLVE_LINES")