Tri (Gestion des données)
Récapitulatif
Réorganise, suivant un ordre croissant ou décroissant, les enregistrements dans une classe ou table d'entités selon un ou plusieurs champs. Le résultat de cette réorganisation est écrit dans un nouveau jeu de données.
Illustration
Utilisation
-
Les classes d'entités peuvent faire l'objet d'une réorganisation spatiale ou d'un tri spatial. Vous devez utiliser le champ Forme comme champ de tri pour effectuer un tri spatial. Il existe plusieurs méthodes de tri spatial qui réorganisent différemment les entités selon leur emplacement.
-
La géodatabase et les classes d'entités SDE, les fichiers de formes, les couches d'entités, les tables et les vues tabulaires sont autant d'entrées valides. Les composants individuels de DAO et les jeux de données SDC sont également des entrées valides.
-
Si des enregistrements en entrée sont sélectionnés, seul le sous-ensemble des enregistrements sélectionnés est trié et écrit dans la sortie.
-
Si plusieurs champs sont définis comme champ de tri, les enregistrements sont d'abord triés en fonction du premier champ, les enregistrements ainsi triés sont ensuite triés en fonction du deuxième champ, et ainsi de suite.
-
Les entités polygone peuvent être triées en fonction de leur surface à l'aide du champ Shape_Area d'une classe d'entités de géodatabase. De même, les entités polylignes peuvent être triées en fonction de leur longueur à l'aide du champ Shape_Length. Si vous souhaitez trier des entités polygone dans un fichier de formes, ajoutez un nouveau champ, calculez la surface dans le nouveau champ à l'aide de la fonction Calculer un champ et exécutez le Tri à l'aide du nouveau champ.
Our le paramètre Champ(s), le tri selon le champ Forme ou selon plusieurs champs est disponible uniquement avec une licence Advanced. Le tri selon un seul champ d'attribut (hormis Forme) est disponible avec tous les niveaux de licence.
Syntaxe
Paramètre | Explication | Type de données |
in_dataset |
Jeu de données en entrée dont les enregistrements sont réorganisés en fonction des valeurs de champ retenues dans le ou les champs de tri. | Table View |
out_dataset |
Classe ou table d'entités en sortie. | Feature Class;Table |
sort_field [[Sort Field, Direction],...] |
Spécifie le ou les champs dont les valeurs vont servir à réorganiser les enregistrements en entrée, et l'ordre dans lequel les enregistrements sont triés.
| Value Table |
spatial_sort_method (Facultatif) |
Spécifie la manière dont les entités sont triées spatialement. La méthode de tri est activée uniquement lorsque le champ Forme est sélectionné comme l'un des champs de tri.
| String |
Exemple de code
Le script de la fenêtre Python suivant montre comment utiliser l'outil Tri pour organiser des entités en fonction des valeurs d'un champ.
import arcpy
from arcpy import env
env.workspace = "C:/data/city.gdb"
arcpy.Sort_management("crime", "crime_Sort", [["DATE_REP", "ASCENDING"]])
Le script Python ci-dessous illustre l'utilisation de l'outil Tri dans un script autonome.
# Name: Sort_example2.py
# Description: Sorts wells by location and well yield.
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
try:
# Set workspace environment
env.workspace = "C:/data/newfoundland.gdb"
# set local variables
in_dataset = "wells"
out_dataset = "wells_Sort"
# Order features first by location (Shape) and then by WELL_YIELD
sort_fields = [["Shape", "ASCENDING"], ["WELL_YIELD", "DESCENDING"]]
# Use Peano algorithm
sort_method = "PEANO"
# execute the function
arcpy.Sort_management(in_dataset, out_dataset, sort_fields, sort_method)
print arcpy.GetMessages()
except arcpy.ExecuteError:
# Print error messages
print arcpy.GetMessages(2)
except Exception as ex:
print ex.args[0]