Résumé
Convertit les données d’événement, telles que les délits ou les incidents sanitaires, en données ponctuelles pondérées.
Illustration
Utilisation
L'outil Collecter les événements combine des points coïncidents : il crée une nouvelle classe d'entités en sortie qui contient tous les emplacements uniques trouvés dans la classe d'entités en entrée. Il ajoute alors un champ nommé ICOUNT qui indique la somme de tous les incidents à chaque emplacement unique.
Cet outil combine uniquement des entités qui ont exactement les même coordonnées de centroïde X et Y. Vous pouvez utiliser l'outil Intégrer pour capturer les entités proches l'une de l'autre avant d'exécuter l'outil Collecter les événements.
Les outils Hot Spot Analysis (Getis-Ord Gi*), Cluster and Outlier Analysis (Local Moran's I) et Spatial Autocorrelation (Morans I), par exemple, nécessitent des points pondérés plutôt que des incidents individuels. L'outil Collecter les événements permet également de créer des pondérations lorsque la classe d'entités en entrée contient des entités coïncidentes.
Bien que cet outil fonctionne avec des données surfaciques ou linéaires, il n'est réellement adapté qu'aux données d'événement, d'incident ou autres données d'entité ponctuelle. Pour les entités linéaires et surfaciques, la coïncidence des entités est basée sur les centroïdes géométriques réels des entités. Pour les multi-points, les polylignes, ou les polygones comprenant plusieurs parties, le centroïde est calculé à l'aide du centre moyen pondéré de toutes les parties d'entité. La pondération pour les entités ponctuelles est de 1 ; pour les entités linéaires, elle correspond à la longueur et pour les entités surfaciques, à la superficie.
Lorsque la Classe d'entités en entrée n'est pas projetée (c'est-à-dire, lorsque les coordonnées sont exprimées en degrés, minutes et secondes) ou lorsque le système de coordonnées en sortie est un Système de coordonnées géographiques, les distances sont calculées à l'aide des mesures à la corde. Les mesures de distance à la corde permettent de calculer rapidement et de fournir une bonne estimation de distance géodésiques réelles, du moins pour les points situés à environ trente degrés les uns des autres. Les distances de corde reposent sur un sphéroïde aplati. Si l'on prend deux points sur la surface de la Terre, la distance de corde qui les sépare est la longueur d'une ligne qui traverse la Terre en trois dimensions pour relier ces deux points. Les distances à la corde sont exprimées en mètres.
Si vous souhaitez que les données ponctuelles/multi-points/multiparties soient traitées en tant qu'entités mono-partie, exécutez l'outil Multi-parties vers une partie, puis exécutez l'outil Collect Events sur la classe d'entités mono-partie. Pour plus d'informations, reportez-vous à la rubrique Traitement des données multi-points.
Outre la Classe d'entités en sortie, cette fonction transmet, comme valeurs en sortie dérivées, le nom du champ de décompte et la valeur de décompte maximale enregistrée pour tous les emplacements. Ces valeurs en sortie dérivées sont utiles lorsque vous utilisez cet outil dans les modèles ou les scripts.
Lorsque l'outil s'exécute dans ArcMap, la classe d'entités en sortie est ajoutée automatiquement à la table des matières et le rendu par défaut est appliqué au champ ICOUNT. Le schéma de rendu par cercles gradués est défini par un fichier de couche dans <ArcGIS>/ArcToolbox/Templates/Layers. Vous pouvez appliquer à nouveau le rendu par défaut, si nécessaire, en important la symbologie des couches modèle.
Syntaxe
CollectEvents_stats (Input_Incident_Features, Output_Weighted_Point_Feature_Class)
Paramètre | Explication | Type de données |
Input_Incident_Features | Entités représentant les données d'événement ou d'incident. | Feature Layer |
Output_Weighted_Point_Feature_Class | Classe d'entités en sortie contenant les données ponctuelles pondérées. | Feature Class |
Exemple de code
Exemple d'utilisation de l'outil CollectEvents (fenêtre Python)
Le script de fenêtre Python ci-dessous illustre l'utilisation de l'outil CollectEvents.
import arcpy
arcpy.env.workspace = "C:/Data"
arcpy.CollectEvents_stats("911Copied.shp", "911Count.shp", "Count", "#")
Exemple d'utilisation de l'outil CollectEvents (script Python autonome)
Le script Python autonome ci-dessous illustre l'utilisation de l'outil CollectEvents.
# Analyze the spatial distribution of 911 calls in a metropolitan area
# using the Hot-Spot Analysis Tool (Local Gi*)
# Import system modules
import arcpy
# Set property to overwrite existing output, by default
arcpy.env.overwriteOutput = True
# Local variables...
workspace = "C:/Data"
try:
# Set the current workspace (to avoid having to specify the full path to the feature classes each time)
arcpy.env.workspace = workspace
# Copy the input feature class and integrate the points to snap
# together at 500 feet
# Process: Copy Features and Integrate
cf = arcpy.CopyFeatures_management("911Calls.shp", "911Copied.shp")
integrate = arcpy.Integrate_management("911Copied.shp #", "500 Feet")
# Use Collect Events to count the number of calls at each location
# Process: Collect Events
ce = arcpy.CollectEvents_stats("911Copied.shp", "911Count.shp", "Count", "#")
# Add a unique ID field to the count feature class
# Process: Add Field and Calculate Field
af = arcpy.AddField_management("911Count.shp", "MyID", "LONG", "#", "#", "#", "#",
"NON_NULLABLE", "NON_REQUIRED", "#",
"911Count.shp")
cf = arcpy.CalculateField_management("911Count.shp", "MyID", "!FID!", "PYTHON")
# Create Spatial Weights Matrix for Calculations
# Process: Generate Spatial Weights Matrix...
swm = arcpy.GenerateSpatialWeightsMatrix_stats("911Count.shp", "MYID",
"euclidean6Neighs.swm",
"K_NEAREST_NEIGHBORS",
"#", "#", "#", 6,
"NO_STANDARDIZATION")
# Hot Spot Analysis of 911 Calls
# Process: Hot Spot Analysis (Getis-Ord Gi*)
hs = arcpy.HotSpots_stats("911Count.shp", "ICOUNT", "911HotSpots.shp",
"GET_SPATIAL_WEIGHTS_FROM_FILE",
"EUCLIDEAN_DISTANCE", "NONE",
"#", "#", "euclidean6Neighs.swm")
except arcpy.ExecuteError:
# If an error occurred when running the tool, print out the error message.
print(arcpy.GetMessages())
Environnements
Informations de licence
- ArcGIS Desktop Basic: Oui
- ArcGIS Desktop Standard: Oui
- ArcGIS Desktop Advanced: Oui