Analyse de points chauds optimisée (Statistiques spatiales)

Résumé

A partir de points d'incident ou d'entités pondérées (points ou polygones), crée une carte de points chauds et de points froids statistiquement significatifs à l'aide de la statistique Getis-Ord Gi*. Il évalue les caractéristiques de la classe d'entités en entrée pour générer des résultats optimaux.

Pour en savoir plus sur le fonctionnement de l'analyse de points chauds optimisée

Illustration

Analyse de points chauds optimisée

Utilisation

  • Cet outil identifie les grappes spatiales statistiquement significatives de valeurs élevées (points chauds) et de valeurs faibles (points froids). Il agrège automatiquement les données d'incident, identifie une échelle d'analyse appropriée et corrige les résultats en tenant compte des tests multiples et de la dépendance spatiale. Cet outil interroge vos données afin de déterminer les paramètres qui génèrent des résultats d'analyse de points chauds optimaux. Si vous souhaitez entièrement contrôler ces paramètres, utilisez à la place l'outil Analyse de points chauds.

    Remarque :

    Les données d'incidents sont des points représentant des événements (crime, accidents de la circulation) ou des objets (arbres, points de vente) où l'accent est mis sur la présence ou l'absence, plutôt que sur un attribut mesuré associé à chaque point.

  • Les paramètres calculés utilisés pour générer des résultats d'analyse de points chauds optimaux sont signalés en tant que messages au cours de l'exécution de l'outil. Les workflows et algorithmes associés sont expliqués dans la rubrique Fonctionnement de l'analyse de points chauds optimisée.

  • Cet outil permet de créer une nouvelle classe d'entités en sortie (Output Feature Class) avec un score z, une valeur de p et un groupe de niveau de confiance (Gi_Bin) pour chaque entité de la classe d'entités en entrée (Input Feature Class). Elle comprend également un champ (NNeighbors) avec le nombre de voisins que chaque entité a inclus dans ses calculs.

  • La sortie de cet outil comprend un histogramme représentant la valeur de la variable analysée (Champ d'analyse ou le nombre total d'incidents au sein de chaque polygone). Le diagramme est accessible à partir de l’onglet List By Charts (Répertorier par diagrammes) Répertorier par diagrammes de la fenêtre Contents (Contenu).

  • Le champ Gi_Bin identifie les points chauds et froids statistiquement significatifs, corrigés pour tenir compte des tests multiples et de la dépendance spatiale à l'aide de la méthode de correction FDR (False Discovery Rate). Les entités qui se trouvent dans les groupes +/-3 (entités avec une valeur Gi_Bin de +3 ou de -3) sont statistiquement significatives avec un niveau de confiance de 99 pour cent ; les entités qui se trouvent dans les groupes +/-2 reflètent un niveau de confiance de 95 pour cent ; les entités qui se trouvent dans les groupes +/-1 reflètent un niveau de confiance de 90 pour cent et l'agrégation des entités dont le champ Gi_Bin a la valeur 0 n'est pas significative statistiquement.

  • Les champs des scores z et des valeurs p ne reflètent aucune sorte de correction FDR (False Discovery Rate). Pour plus d'informations sur les scores z et les valeurs de p, reportez-vous à la rubrique Qu'est-ce qu'un score z ? Qu'est-ce qu'une valeur p ?

  • 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.

    Attention :

    Veillez à projeter les données si votre zone d'étude s'étend au-delà de 30 degrés. Les distances à la corde ne constituent pas une bonne estimation des distance géodésiques au-delà de 30 degrés.

  • Les entités en entrée peuvent être des points ou des polygones. Avec les polygones, un champ d'analyse est requis.

  • Si vous indiquez un champ d'analyse, il doit contenir plusieurs valeurs. Les formules mathématiques de cette statistique requièrent que la variable analysée fluctue quelque peu ; elle ne peut pas aboutir si toutes les valeurs en entrée sont égales à 1, par exemple.

  • Grâce au Champ d'analyse, cet outil est adapté à toutes les données (points ou polygones), notamment les données échantillonnées. En fait, il est efficace et fiable même en cas de suréchantillonnage. Lorsque de nombreuses entités sont présentes (suréchantillonnage), l'outil a plus d'informations pour calculer des résultats plus précis et fiables. Lorsqu'un nombre réduit d'entités est présent (sous-échantillonnage) l'outil fait ce qu'il peut pour produire des résultats précis et fiables, mais il a moins d'informations avec lesquelles travailler.

    Les statistiques Getis-Ord Gi* sous-jacentes utilisées par cet outil étant asymptotiquement normales, même lorsque le Champ d'analyse contient des données faussées, les résultats sont fiables.

  • Dans le cas de données ponctuelles, vous pouvez souhaiter quelquefois analyser des valeurs de données associées à chaque entité ponctuelle et vous fournirez par conséquent un champ d'analyse. Dans d'autres cas, vous vous intéresserez uniquement au modèle spatial (agrégation) des emplacements de points ou des incidents de points. La décision de fournir un champ d'analyse ou non dépend de la question que vous posez.

    • L'analyse d'entités ponctuelles avec un champ d'analyse permet de répondre à ce type de question : où les valeurs élevées et faibles s'agrègent-elles ?
    • Le champ d'analyse que vous sélectionnez peut représenter ce qui suit :
      • Des nombres (par exemple le nombre d'accidents de circulation aux intersections de rues)
      • Des taux (par exemple, le chômage urbain, où chaque ville est représentée par une entité ponctuelle)
      • Des moyennes (par exemple, le résultat moyen des écoles)
      • Des indices (par exemple, de satisfaction des clients pour les concessions automobiles à travers le pays)
    • L'analyse d'entités ponctuelles en l'absence de champ d'analyse permet d'identifier les endroits où l'agrégation de points est inhabituellement (statistiquement significative) intense ou faible. Ce type d'analyse peut répondre à ce type de questions : Où se trouve la majeure partie des points ? Où se trouve un petit nombre de points ?
  • Si vous ne fournissez pas de champ d'analyse, l'outil agrège vos points afin d'obtenir un nombre de points à utiliser comme champ d'analyse. Il existe trois schémas d'agrégation :

    • Pour Nombre d'incidents au sein de la grille de quadrillage et Nombre d'incidents au sein de la grille hexagonale, une taille de cellule de polygone appropriée est calculée et utilisée pour créer un maillage de polygones de quadrillage ou hexagonaux, qui est ensuite positionné sur les points d'incident. Les points au sein de chaque cellule de polygone sont comptabilisés. Si aucune couche d'entités des polygones d'emprise définissant l'endroit où les incidents sont possibles n'est fournie, les cellules avec zéro point sont supprimées et seules les cellules restantes sont analysées. Si une couche d'entités des polygones d'emprise est fournie, toutes les cellules qui se trouvent au sein des polygones d'emprise sont conservées et analysées. Les nombres de points pour chaque cellule de polygone sont utilisés comme champ d'analyse.
      Remarque :

      Bien que les quadrillages constituent la forme d'agrégation la plus courante, les hexagones peuvent être préférables pour certaines analyses.

    • Pour Nombre d'incidents au sein des polygones d'agrégation, vous devez fournir la couche d'entités des polygones d'agrégation des incidents en nombres. Les incidents de points qui se trouvent au sein de chaque polygone sont comptabilisés, et ces polygones avec leurs nombres associés sont ensuite analysés. L'option Nombre d'incidents au sein des polygones d'agrégation est une stratégie d'agrégation appropriée lorsque les points sont associés à des unités administratives, telles que des secteurs, des départements ou des zones scolaires. Vous pouvez également utiliser cette option si vous souhaitez utiliser la même zone d'étude dans plusieurs analyses, afin d'améliorer les comparaisons.
    • Pour Capture des incidents à proximité pour créer des points pondérés, une distance de capture est calculée et utilisée pour agréger les points d'incidents voisins. Chaque point agrégé se voit attribuer un nombre reflétant le nombre d'incidents qui ont été capturés ensemble. Les points agrégés sont ensuite analysés avec les nombres d'incidents utilisés comme champ d'analyse. L'option Capture des incidents à proximité pour créer des points pondérés est appropriée lorsque vous disposez d'un grand nombre de points coïncidents, ou presque coïncidents, et que vous souhaitez conserver les aspects du modèle spatial des données de points d'origine.

    Remarque :
    Dans de nombreux cas, vous pouvez essayer à la fois Capture des incidents à proximité pour créer des points pondérés, Nombre d'incidents au sein de la grille de quadrillage et ;Nombre d'incidents au sein de la grille hexagonale pour voir quel résultat reflète le mieux le modèle spatial des données de points d'origine. Les solutions de quadrillage et hexagonales peuvent artificiellement séparer les incidents de points, mais certaines personnes peuvent interpréter plus facilement ce résultat que les points pondérés. Bien que les grilles de quadrillage tendent à constituer la forme d'agrégation la plus courante, les hexagones peuvent être préférables pour certaines analyses.

    Attention :

    L'analyse de données de points sans préciser de champ d'analyse a un sens uniquement si vous avez tous les incidents de points connus et si vous êtes sûr de l'absence de biais dans la distribution des points que vous analysez. Avec les données échantillonnées, vous allez presque toujours inclure un champ d'analyse (à moins que vous ne soyez particulièrement intéressé par le modèle spatial de votre schéma d'échantillonnage).

  • Lorsque vous sélectionnez Nombre d'incidents au sein de la grille de quadrillage ou Nombre d'incidents au sein de la grille hexagonale comme méthode d'agrégation des données d'incident, vous pouvez fournir une couche d'entités des polygones d'emprise définissant l'endroit où les incidents sont possibles. Si aucun polygone d'emprise n'est fourni, l'outil ne peut pas savoir si un emplacement sans incident doit avoir la valeur zéro pour indiquer qu'un incident est possible à cet emplacement (sans s'être produit), ou si l'emplacement doit être supprimé de l'analyse parce qu'aucun incident ne se produira jamais à cet emplacement. Par conséquent, si aucun polygone d'emprise n'est fourni, seules les cellules ayant au moins un incident sont conservées pour l'analyse. Si ce comportement ne correspond pas à vos attentes, vous pouvez fournir une couche d'entités des polygones d'emprise définissant l'endroit où les incidents sont possibles pour vous assurer que tous les emplacements au sein des polygones d'emprise sont conservés. Les cellules de quadrillage ou hexagonales sans incident sous-jacent reçoivent un nombre d'incidents de zéro.

  • Les incidents qui se trouvent en dehors des polygones d'emprise définissant l'endroit où les incidents sont possibles ou des polygones permettant d’agréger les incidents dans les nombres sont exclus de l'analyse.

  • Plutôt que de laisser l'outil choisir les paramètres par défaut optimums pour la taille de cellule de grille et l'échelle d'analyse, les Paramètres de remplacement peuvent être utilisés pour définir la taille de cellule ou le canal distance pour l'analyse.

  • L'option Taille de cellule vous permet de définir la taille de la grille utilisée pour agréger vos données ponctuelles. Chaque cellule peut avoir, par exemple, des quadrillages de 50 mètres sur 50 mètres. Si vous optez pour l'agrégation avec des hexagones, la taille de cellule correspond à la hauteur de chaque hexagone et la largeur des hexagones obtenus est de deux fois la hauteur divisée par la racine carrée de 3.

    Taille de cellule de distance des hexagones et des quadrillages

  • Vous devez utiliser les outils Générer la matrice de pondérations spatiales et Analyse de points chauds (Getis-Ord Gi*) ou Exploration des modèles spatio-temporels pour identifier les points chauds spatio-temporels. Pour plus d'informations sur l'analyse d'agrégats spatio-temporels, reportez-vous aux rubriques Analyse d'agrégats spatio-temporels et Exploration des modèles spatio-temporels de la documentation.

  • Les couches peuvent permettre de définir la classe d'entités en entrée. Lorsque vous utilisez une couche avec une sélection, seules les entités sélectionnées sont comprises dans l'analyse.

  • La couche Output Features (Entités en sortie) est ajoutée automatiquement à la table des matières et le rendu par défaut est appliqué au champ Gi_Bin. Le rendu de type chaud à froid est défini par un fichier de couche dans <ArcGIS Pro>\Resources\ArcToolBox\Templates\Layers. Vous pouvez appliquer à nouveau le rendu par défaut, si nécessaire, à l'aide de l'outil Appliquer la symbologie d'une couche.

  • Attention :

    Lorsque vous utilisez des shapefiles, n'oubliez pas qu'ils ne peuvent pas stocker de valeurs Null. Il se peut que des outils ou autres procédures qui créent des fichiers de formes à partir d'entrées autres que des fichiers de formes stockent ou interprètent des valeurs Null comme étant égales à zéro. Dans certains cas, les valeurs Null sont stockées sous forme de valeurs négatives très élevées dans les fichiers de formes. Cela peut aboutir à des résultats inattendus. Reportez-vous à la rubrique Remarques concernant le géotraitement pour la sortie de fichiers de formes pour plus d'informations.

Syntaxe

arcpy.stats.OptimizedHotSpotAnalysis(Input_Features, Output_Features, {Analysis_Field}, {Incident_Data_Aggregation_Method}, {Bounding_Polygons_Defining_Where_Incidents_Are_Possible}, {Polygons_For_Aggregating_Incidents_Into_Counts}, {Density_Surface}, {Cell_Size}, {Distance_Band})
ParamètreExplicationType de données
Input_Features

Classe d'entités de type point ou surfaciques pour laquelle une analyse Hot Spot est effectuée.

Feature Layer
Output_Features

Classe d'entités en sortie dans laquelle les résultats des scores z, des valeurs de p et Gi_Bin seront enregistrés.

Feature Class
Analysis_Field
(Facultatif)

Champ numérique (nombre d'incidents, taux de criminalité, résultats d'examens, etc.) à évaluer.

Field
Incident_Data_Aggregation_Method
(Facultatif)

Méthode d'agrégation à utiliser pour créer des entités pondérées pour l'analyse à partir des données ponctuelles d'incident.

  • COUNT_INCIDENTS_WITHIN_FISHNET_POLYGONSUn maillage de polygones de quadrillage se superpose aux données ponctuelles d'incident et le nombre d'incidents au sein de chaque cellule de polygone est comptabilisé. Si aucun polygone d'emprise n'est fourni dans le paramètre Bounding_Polygons_Defining_Where_Incidents_Are_Possible, seules les cellules ayant au moins un incident sont utilisées dans l'analyse. Sinon, toutes les cellules au sein des polygones d'emprise sont analysées.
  • COUNT_INCIDENTS_WITHIN_HEXAGON_POLYGONSUn maillage de polygones de quadrillage hexagonaux se superpose aux données ponctuelles d'incident et le nombre d'incidents au sein de chaque cellule de polygone est comptabilisé. Si aucun polygone d'emprise n'est fourni dans le paramètre Bounding_Polygons_Defining_Where_Incidents_Are_Possible, seules les cellules ayant au moins un incident sont utilisées dans l'analyse. Sinon, toutes les cellules au sein des polygones d'emprise sont analysées.
  • COUNT_INCIDENTS_WITHIN_AGGREGATION_POLYGONSVous fournissez les polygones d'agrégation qui se superposent aux données ponctuelles d'incident dans le paramètre Polygons_For_Aggregating_Incidents_Into_Counts. Les incidents au sein de chaque polygone sont comptabilisés.
  • SNAP_NEARBY_INCIDENTS_TO_CREATE_WEIGHTED_POINTSLes incidents à proximité sont agrégés ensemble pour créer un seul point pondéré. La pondération de chaque point est le nombre d'incidents agrégés à cet emplacement.
String
Bounding_Polygons_Defining_Where_Incidents_Are_Possible
(Facultatif)

Classe d'entités surfaciques définissant l'endroit où les Input_Features d'incident peuvent se produire.

Feature Layer
Polygons_For_Aggregating_Incidents_Into_Counts
(Facultatif)

Polygones à utiliser pour agréger les Input_Features d'incident afin d'obtenir un nombre d'incidents pour chaque entité surfacique.

Feature Layer
Density_Surface
(Facultatif)

Ce paramètre Density_Surface est désactivé. Il est conservé comme paramètre d'outil afin d'assurer la compatibilité avec les versions précédentes. L'outil Densité de noyau peut être utilisé si vous souhaitez une visualisation de surface de densité de vos points pondérés.

Raster Dataset
Cell_Size
(Facultatif)

Taille des cellules de grille utilisées pour agréger les Input_Features. Lorsque vous effectuez l'agrégation dans un quadrillage, cette distance sert de hauteur pour construire les polygones hexagonaux.

Linear Unit
Distance_Band
(Facultatif)

Etendue spatiale du voisinage d'analyse. Cette valeur désigne les entités qui sont analysées ensemble en vue d'évaluer l'agrégation locale.

Linear Unit

Exemple de code

Exemple 1 d'utilisation de l'outil Analyse de points chauds optimisée (fenêtre Python)

Le script de fenêtre Python ci-dessous illustre l'utilisation de l'outil OptimizedHotSpotAnalysis.

import arcpy
arcpy.env.workspace = r"C:\OHSA"
arcpy.OptimizedHotSpotAnalysis_stats("911Count.shp", "911OptimizedHotSpots.shp", "#", "SNAP_NEARBY_INCIDENTS_TO_CREATE_WEIGHTED_POINTS", "#", "#", "#", "#", "#")
Exemple 2 d'utilisation de l'outil Analyse de points chauds optimisée (script Python autonome)

Le script Python autonome ci-dessous illustre l'utilisation de l'outil OptimizedHotSpotAnalysis.

# Analyze the spatial distribution of 911 calls in a metropolitan area
# Import system modules
import arcpy
# Set property to overwrite existing output, by default
arcpy.env.overwriteOutput = True
# Local variables...
workspace = r"C:\OHSA\data.gdb"
try:
    # Set the current workspace (to avoid having to specify the full path to the feature classes each time)
    arcpy.env.workspace = workspace
    # Create a polygon that defines where incidents are possible  
    # Process: Minimum Bounding Geometry of 911 call data
    arcpy.MinimumBoundingGeometry_management("Calls911", "Calls911_MBG", "CONVEX_HULL", "ALL", 
                                             "#", "NO_MBG_FIELDS")
    # Optimized Hot Spot Analysis of 911 call data using fishnet aggregation method with a bounding polygon of 911 call data
    # Process: Optimized Hot Spot Analysis 
    ohsa = arcpy.OptimizedHotSpotAnalysis_stats("Calls911", "Calls911_ohsaFishnet", "#", "COUNT_INCIDENTS_WITHIN_FISHNET_POLYGONS", 
                                                "Calls911_MBG", "#", "#", "#", "#") 
except arcpy.ExecuteError:
    # If any error occurred when running the tool, print the messages
    print(arcpy.GetMessages())

Environnements

Système de coordonnées en sortie

La géométrie de l'entité est projetée au système de coordonnées en sortie avant l'analyse. Tous les calculs mathématiques sont basés sur la référence spatiale du système de coordonnées en sortie. Lorsque le système de coordonnées en sortie est exprimé en degrés, minutes et secondes, les distances géodésiques sont estimées à l'aide de distances à la corde.

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes