Collect Events (Statistiques spatiales)
Récapitulatif
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 Collect Event 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 Collect Events.
Attention :L'outil Intégrer modifie définitivement la géométrie de l'entité ; faites toujours une copie de sauvegarde de votre classe d'entités avant de l'utiliser.
-
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 Collect Events 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 toute 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.
-
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 couches 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
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
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", "#")
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 geoprocessor object property to overwrite existing output, by default
arcpy.gp.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",
"#", 0, 0, 0)
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]", "VB")
# 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:
# If an error occurred when running the tool, print out the error message.
print arcpy.GetMessages()