Résumé
A partir d'un ensemble d'entités pondérées, identifie les points chauds et les points froids statistiquement significatifs à l'aide de la statistique Getis-Ord Gi*.
Pour en savoir plus sur le fonctionnement de l'analyse de points chauds (Getis-Ord Gi*)
Illustration
Utilisation
Cet outil identifie les grappes spatiales statistiquement significatives de valeurs élevées (points chauds) et de valeurs faibles (points froids). Il permet de créer une nouvelle classe d'entités en sortie avec un score z, une valeur de p et un bin de niveau de confiance () pour chaque entité de la classe d'entités en entrée.
Les scores z et les valeurs p sont des mesures de signification statistique qui indiquent si l'on peut ou non rejeter l'hypothèse nulle, entité par entité. Ces mesures indiquent en effet si l'agrégation spatiale observée des valeurs élevées ou faibles est plus prononcée qu'elle ne devrait l'être dans le cadre d'une répartition aléatoire de ces mêmes valeurs. Les champs des scores z et des valeurs p ne reflètent aucune sorte de correction FDR (False Discovery Rate).
Le champ Gi_Bin identifie les points chauds et les points froids statistiquement significatifs, que la correction FDR soit ou non appliquée. Les entités qui se trouvent dans les bins +/-3 reflètent la signification statistique avec un niveau de confiance de 99 pour cent, les entités qui se trouvent dans les bins +/-2 reflètent un niveau de confiance de 95, les entités qui se trouvent dans les bins +/-1 reflètent un niveau de confiance de 90 pour cent et l'agrégation des entités qui se trouvent dans le bin 0 n'est pas significative statistiquement. Sans correction FDR, la signification statistique repose sur les champs des valeurs p et des scores z. Lorsque vous sélectionnez le paramètre facultatif Appliquer la correction FDR (False Discovery Rate), les valeurs p critiques qui déterminent les niveaux de confiance sont réduites pour prendre en compte les tests multiples et la dépendance spatiale.
Un score z élevé et une valeur p basse indiquent une agrégation spatiale de valeurs élevées. Un score z négatif faible et une valeur p basse indiquent une agrégation spatiale de valeurs faibles. Plus le score z est élevé (ou faible), plus l'intensité de l'agrégation est importante. Un score z proche de zéro indique qu'il n'y a aucune agrégation apparente.
-
Le score z repose sur le calcul de l'hypothèse nulle aléatoire. Pour plus d'informations sur les scores z, 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.
Lorsque vous utilisez des distances à la corde dans l'analyse, le paramètre Canal distance ou distance seuil, s'il est spécifié, doit être exprimé en mètres.
Avant ArcGIS 10.2.1, un message d'avertissement s'affichait si les paramètres et les paramètres d'environnement sélectionnés devaient entraîner des calculs avec des coordonnées géographiques (degrés, minutes, secondes). Cet avertissement vous conseillait de projeter vos données dans un système de coordonnées projetées, de manière que les calculs de distance soient précis. Cependant, depuis la version 10.2.1, cet outil calcule les distances à la corde à chaque fois que des calculs de système de coordonnées géographiques sont nécessaires.
-
Pour les entités linéaires et surfaciques, les centroïdes d'entité sont utilisés dans les calculs de distance. 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.
Le Champ en entrée doit contenir différentes 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. Si vous souhaitez utiliser cet outil pour analyser le modèle spatial de données d'incident, vous devrez peut-être agréger les données d'incident ou utiliser l'outil Analyse de points chauds optimisée.
L'outil Analyse de points chauds optimisée interroge vos données afin de sélectionner automatiquement les paramètres qui optimiseront les points chauds obtenus. Il agrège les données d'incident, sélectionne une échelle d'analyse appropriée et ajuste les résultats en tenant compte des tests multiples et de la dépendance spatiale. Les options de paramètre qu'il sélectionne sont indiquées dans la fenêtre Résultats, ce qui vous permettra d'affiner vos options lors de l'utilisation de cet outil. Cet outil vous donne un contrôle et une flexibilité complets sur les paramètres.
Le choix du paramètre Conceptualisation de relations spatiales doit refléter les relations inhérentes entre les entités que vous analysez. Plus la modélisation de l'interaction des entités dans l'espace est réaliste, plus les résultats sont précis. Des recommandations sont présentées dans la section Sélection d'une conceptualisation de relations spatiales : meilleures pratiques. Voici quelques conseils supplémentaires :
- FIXED_DISTANCE_BAND
La valeur par défaut Canal distance ou distance seuil permet de s'assurer que chaque entité possède au moins un voisin. Mais bien souvent, cette valeur par défaut n'est pas la distance la plus appropriée à l'analyse. Reportez-vous à la rubrique Sélection d'une valeur de canal de distance constante pour connaître les stratégies permettant de définir une valeur de canal de distance appropriée pour votre analyse.
- INVERSE_DISTANCE ou INVERSE_DISTANCE_SQUARED
Si une valeur égale à zéro est entrée pour le paramètre Canal distance ou distance seuil, toutes les entités sont considérées voisines de toutes les autres entités ; si aucune valeur n'est spécifiée pour ce paramètre, la distance par défaut est appliquée.
Les pondérations pour les distances inférieures à 1 deviennent instables lorsqu'elles sont inversées. Par conséquent, la pondération d'entités séparées par moins d'une unité de distance se voit affecter la valeur 1.
Pour les options de type inverse de la distance (INVERSE_DISTANCE, INVERSE_DISTANCE_SQUARED ou ZONE_OF_INDIFFERENCE), toute paire de points coïncidents se voit affecter une pondération de 1 pour éviter une division par zéro. Ainsi, aucune entité n'est exclue de l'analyse.
- FIXED_DISTANCE_BAND
-
Des options supplémentaires pour le paramètre Conceptualisation de relations spatiales (y compris les relations spatio-temporelles) sont proposées par les outils Générer la matrice de pondérations spatiales ou Générer les pondérations spatiales de réseau. Pour tirer parti de ces options, utilisez l'un de ces outils afin de créer le fichier de matrice de pondérations spatiales avant l'analyse. Sélectionnez GET_SPATIAL_WEIGHTS_FROM_FILE comme valeur du paramètre Conceptualisation de relations spatiales. Enfin, pour le paramètre Fichier de matrice de pondérations, spécifiez le chemin d'accès au fichier de matrice de pondérations spatiales que vous avez créé.
-
Pour plus d'informations sur l'analyse d'agrégats spatio-temporels, consultez la documentation Analyse spatio-temporelle.
-
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.
Si vous utilisez un fichier de matrice de pondérations portant une extension .swm, l'outil attend un fichier de matrice de pondérations spatiales créé à l'aide des outils Générer la matrice de pondérations spatiales ou Générer les pondérations spatiales de réseau. Dans le cas contraire, cet outil attend un fichier de matrice de pondérations spatiales au format ASCII. Dans certains cas, le comportement diffère selon le type de fichier de matrice de pondérations spatiales utilisé :
- Fichiers ASCII de matrice de pondérations spatiales :
- Les pondérations sont utilisées en l'état. Les relations d'entité à entité manquantes sont considérées comme nulles.
- La pondération par défaut du potentiel propre est nulle, sauf si vous spécifiez une valeur de Champ de potentiel propre ou si vous incluez explicitement des pondérations de potentiel propre.
- Les relations asymétriques sont respectées, ce qui permet à une entité d'avoir une entité voisine qui ne comporte elle-même pas de voisin. En d'autres termes, l'entité voisine est incluse dans le calcul de moyenne locale de l'entité d'origine, mais pas dans le calcul de la moyenne globale.
- Si les pondérations sont standardisées par lignes, les résultats des analyses réalisées sur les ensembles de sélection risquent d'être incorrects. Si vous devez effectuer votre analyse sur un ensemble de sélection, convertissez le fichier ASCII de pondérations spatiales en fichier SWM. Pour ce faire, chargez les données ASCII dans une table, puis utilisez l'option CONVERT_TABLE de l'outil Générer la matrice de pondérations spatiales.
- Fichier SWM de matrice de pondérations spatiales :
- Si les pondérations sont standardisées par lignes, elles seront standardisées à nouveau pour les ensembles de sélection. Dans le cas contraire, les pondérations sont utilisées en l'état.
- La pondération par défaut du potentiel propre est 1, sauf si vous spécifiez une valeur de Champ de potentiel propre.
- Fichiers ASCII de matrice de pondérations spatiales :
L'exécution de l'analyse avec un fichier de matrice de pondérations spatiales au format ASCII exige beaucoup de mémoire. Pour les analyses portant sur plus de 5 000 entités, envisagez de convertir votre fichier ASCII de matrice de pondérations spatiales en fichier au format SWM. En premier lieu, placez vos pondérations ASCII dans une table avec mise en forme (à l'aide d'Excel, par exemple). Exécutez ensuite l'outil Générer la matrice de pondérations spatiales en utilisant l'option CONVERT_TABLE pour le paramètre Conceptualisation de relations spatiales. La sortie sera un fichier SWM de matrice de pondérations spatiales.
-
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 Gi_Bin. Le rendu de type chaud à froid appliqué est défini par un fichier de couche dans <ArcGIS>/Desktop10.x/ArcToolbox/Templates/Layers. Vous pouvez appliquer à nouveau le rendu par défaut, si nécessaire, en important la symbologie des couches modèle.
-
Le paramètre Classe d'entités en sortie comprend un champ SOURCE_ID qui vous permet de Joindre ce champ à la classe d'entités en entrée, si nécessaire.
-
La rubrique d'aide Modélisation de relations spatiales fournit des informations complémentaires sur les paramètres de cet outil.
Lorsque vous utilisez cet outil dans les scripts Python, l'objet de résultat renvoyé après l'exécution de l'outil comporte les sorties suivantes :
Position Description Type de données 0
Classe d'entités en sortie
Classe d'entités
1
Nom du champ de résultats (GiZScore)
Champ
2
Nom du champ de probabilité (GiPValue)
Champ
3
Nom du champ ID de la source (SOURCE_ID)
Champ
Syntaxe
HotSpots_stats (Input_Feature_Class, Input_Field, Output_Feature_Class, Conceptualization_of_Spatial_Relationships, Distance_Method, Standardization, {Distance_Band_or_Threshold_Distance}, {Self_Potential_Field}, {Weights_Matrix_File}, {Apply_False_Discovery_Rate__FDR__Correction})
Paramètre | Explication | Type de données |
Input_Feature_Class | Classe d'entités pour laquelle une analyse de points chauds est effectuée. | Feature Layer |
Input_Field | Le champ numérique (nombre de victimes, taux de criminalité, résultats d'examens, etc.) à évaluer. | Field |
Output_Feature_Class | La classe d'entités en sortie dans laquelle les résultats des scores z et des valeurs p seront enregistrés. | Feature Class |
Conceptualization_of_Spatial_Relationships | Indique comment les relations spatiales sont définies parmi les entités.
| String |
Distance_Method | Spécifie le mode de calcul des distances de chaque entité avec les entités voisines.
| String |
Standardization | La standardisation par lignes n'a pas d'effet sur cet outil. Les résultats obtenus à l'aide de l'outil Analyse de point chaud (Getis-Ord Gi*) sont identiques, que la standardisation par lignes soit utilisée ou non. Ce paramètre est désactivé. Il est conservé comme paramètre d'outil afin d'assurer la compatibilité avec les versions précédentes.
| String |
Distance_Band_or_Threshold_Distance (Facultatif) | Spécifie une distance limite pour les options d'inverse de la distance et de distance fixe. Les entités se trouvant à l'extérieur de la limite spécifiée pour une entité cible ne sont pas prises en compte dans les analyses pour cette entité. Cependant, pour ZONE_OF_INDIFFERENCE, l'influence des entités situées hors de la distance donnée est réduite avec la distance, tandis que les entités se trouvant dans le seuil de distance sont considérées à part égale. La valeur de distance entrée doit être identique à celle du système de coordonnées en sortie. Pour les conceptualisations d'inverse de la distance des relations spatiales, une valeur de 0 indique qu'aucune distance de seuil n'est appliquée ; lorsque ce paramètre n'est pas défini, une valeur de seuil par défaut est calculée et appliquée. Cette valeur par défaut est la distance euclidienne qui permet de s'assurer que chaque entité possède au moins un voisin. Ce paramètre n'a aucun effet lorsque les conceptualisations spatiales de contiguïté polygonale (CONTIGUITY_EDGES_ONLY ou CONTIGUITY_EDGES_CORNERS) ou GET_SPATIAL_WEIGHTS_FROM_FILE sont sélectionnées. | Double |
Self_Potential_Field (Facultatif) | Champ représentant le potentiel propre, c'est-à-dire la distance ou la pondération entre une entité et elle-même. | Field |
Weights_Matrix_File (Facultatif) | Chemin d'accès à un fichier contenant des pondérations qui définissent les relations spatiales, et potentiellement les relations temporelles, entre des entités. | File |
Apply_False_Discovery_Rate__FDR__Correction (Facultatif) |
| Boolean |
Exemple de code
Exemple 1 d'utilisation de l'outil HotSpotAnalysis (fenêtre Python)
Le script de fenêtre Python ci-dessous montre comment utiliser l'outil HotSpotAnalysis.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.HotSpots_stats("911Count.shp", "ICOUNT", "911HotSpots.shp",
"GET_SPATIAL_WEIGHTS_FROM_FILE", "EUCLIDEAN_DISTANCE",
"NONE","#", "#", "euclidean6Neighs.swm","NO_FDR")
Exemple 2 d'utilisation de l'outil HotSpotAnalysis (script Python autonome)
Le script Python autonome ci-dessous illustre l'utilisation de l'outil HotSpotAnalysis.
# 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",
"#", 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","NO_FDR")
except:
# 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
Rubriques connexes
- Modélisation de relations spatiales
- Qu'est-ce qu'un score z ? Qu'est-ce qu'une valeur p ?
- Pondérations spatiales
- Présentation générale du jeu d'outils Appariement d'agrégats
- Autocorrélation spatiale (Global Moran's I)
- Analyse de grappes et de valeurs aberrantes (Anselin Local Morans I)
- Fonctionnement de l'analyse de points chauds (Getis-Ord Gi*)
- Autocorrélation spatiale incrémentielle
- Analyse de points chauds optimisée
- Analyse de points aberrants optimisée