Résumé
Mesure les motifs locaux de l’association spatiale, ou colocalisation, entre deux catégories d’entités ponctuelles à l’aide de la statistique de quotient de colocalisation.
En savoir plus sur le fonctionnement de l’outil Analyse de colocalisation
Illustration
Utilisation
Cet outil n’accepte que les entités ponctuelles. Les catégories que vous souhaitez analyser peuvent être contenues dans les mêmes jeux de données ou dans des jeux de données distincts. Vous pouvez également utiliser deux jeux de données distincts à considérer comme catégories. Par exemple, vous pouvez disposer d’un jeu de données ponctuelles contenant de nombreux types de restaurants qui ne sera considéré que comme catégorie RESTAURANTS et un autre jeu de données ponctuelles contenant de nombreux types de crimes qui ne sera considéré que comme catégorie CRIMES.
Pour chaque entité de la catégorie d’intérêt (Category of Interest), l’outil détermine si les entités de la catégorie voisine (Neighboring Category) sont plus ou moins présentes dans le voisinage de l’entité par rapport à la distribution spatiale globale des catégories. Par exemple, pour chaque entité de la catégorie A, une valeur de quotient de colocalisation locale (LCLQ) résultante de 1 signifie que vous avez autant de chances d’avoir la catégorie B en tant que voisin que vous pourriez vous y attendre. Une valeur LCLQ supérieure à 1 signifie que vous avez plus de chances (qu’aléatoirement) que la catégorie B soit un voisin, et une valeur LCLQ inférieure à 1 signifie que l’entité de la catégorie A a moins de chances d’avoir une catégorie B comme votre voisin (qu’une distribution aléatoire).
Remarque :
La relation de colocalisation de cette analyse n’est pas symétrique. Les valeurs de quotient de colocalisation calculées lors de la comparaison de la catégorie A à la catégorie B sont différentes des valeurs de quotient de colocalisation calculées lors de la comparaison de la catégorie B à la catégorie A.
De plus, si vous avez la catégorie C dans votre voisinage, les quotients de colocalisation résultants sont différents des valeurs obtenues si vous n’aviez que les catégories A et B. Selon la question que vous posez, il peut être important de créer un sous-jeu de vos données pour n’inclure que les catégories A et B. Toutefois, lors de la création d’un sous-jeu, vous perdez des informations sur les autres catégories présentes. La sélection et la création d’un sous-ensemble de données sont importantes lorsque vous êtes certain que l’occurrence d’une catégorie n’est en rien affectée par l’occurrence d’une autre.
Les relations spatiales peuvent être définies à l’aide d’un canal de distance (Distance band), des k voisins les plus proches (K nearest neighbors) ou d’un fichier matrice de pondérations spatiales via le paramètre Neighborhood Type (Type de voisinage).
Vous pouvez analyser vos données à l’aide de fenêtres spatio-temporelles en spécifiant les paramètres Time Field of Interest (Champ temporel d’intérêt), Time Field of Neighboring Categories (Champ temporel de catégories voisines) et Temporal Relationship Type (Type de relation temporelle). Avec les fenêtres spatio-temporelles, vous pouvez déterminer quelles entités sont incluses dans le voisinage analysé. Les entités proches les unes des autres dans l’espace et dans le temps sont analysées ensemble car toutes les relations entre les entités sont évaluées par rapport à l’emplacement et à l’horodatage de l’entité cible. Vous pouvez également indiquer si l’outil recherche des entités avant ou après l’entité cible, ou créer une période pendant laquelle l’outil recherche des entités avant ou après l’entité cible en cours d’analyse.
Le paramètre Number of Permutations (Nombre de permutations) est utilisé pour calculer les valeurs p. Le choix du nombre de permutations doit faire l’objet d’un compromis entre précision et augmentation du temps de traitement. La valeur par défaut est de 99 permutations, mais il est recommandé d’augmenter le nombre de permutations pour les résultats d’analyse finaux.
Un quotient de colocalisation global peut également être calculé en spécifiant un chemin pour le paramètre Output Table for Global Relationships (Table en sortie pour les relations globales). Cette table contient des quotients de colocalisation afin que vous puissiez analyser les mesures d’association spatiale entre toutes les catégories dans votre jeu de données. Cela vous permet d’explorer d’autres relations dans vos données, car il se peut que vous trouviez d’autres catégories fortement colocalisées globalement. Si vous trouvez d’autres catégories fortement colocalisées, vous pouvez étendre votre analyse en explorant la nature locale de cette relation en exécutant de nouveau l’outil avec ces catégories d’intérêt, ou en exécutant de nouveau l’outil en supprimant ces catégories de l’analyse si vous pensez que les catégories fortement colocalisées introduisent des déformations inutiles dans vos résultats.
Cet outil génère une carte affichant chacune des entités d’intérêt en entrée (Input Features of Interest) symbolisée selon qu’elle est significativement colocalisée avec ou isolée des entités voisines en entrée (Input Neighboring Features). L’outil ajoute des champs aux entités en sortie (Output Features), y compris le quotient de colocalisation locale calculé, la valeur p, la classe LCLQ utilisée pour la symbolisation, ainsi que le type LCLQ. Il est possible de spécifier une table facultative, pour le paramètre Output Table for Global Relationships (Table en sortie pour les relations globales), qui indique les quotients de colocalisation globale entre toutes les catégories du paramètre Field of Interest (Champ d’intérêt) et toutes les catégories du paramètre Field Containing the Neighboring Category (Champ contenant la catégorie voisine).
Cet outil prend en charge le traitement parallèle et utilise 50 pour cent des processeurs disponibles par défaut. Le nombre de processeurs utilisés peut être augmenté ou réduit à l'aide de l'environnement Facteur de traitement parallèle.
Syntaxe
arcpy.stats.ColocationAnalysis(input_type, in_features_of_interest, output_features, {field_of_interest}, {time_field_of_interest}, {category_of_interest}, {input_feature_for_comparison}, {field_for_comparison}, {time_field_for_comparison}, {category_for_comparison}, neighborhood_type, {number_of_neighbors}, {distance_band}, {weights_matrix_file}, {temporal_relationship_type}, {time_step_interval}, {number_of_permutations}, {local_weighting_scheme}, {output_table})
Paramètre | Explication | Type de données |
input_type | Indique si les valeurs de paramètre in_features_of_interest proviennent du même jeu de données ayant des catégories spécifiées, de jeux de données différents ayant des catégories spécifiées, ou de jeux de données différents traités comme leur propre catégorie (par exemple, un jeu de données dont tous les points représentent les guépards et un second jeu de données dont tous les points représentent les gazelles).
| String |
in_features_of_interest | Classe d’entités contenant des points avec les catégories respectives. | Feature Layer |
output_features | Classe d’entités en sortie contenant toutes les valeurs de paramètre in_features avec des champs représentant les scores de quotient de colocalisation locale et les valeurs p. | Feature Class |
field_of_interest (Facultatif) | Champ contenant la ou les catégories à analyser. | Field |
time_field_of_interest (Facultatif) | Champ de date contenant un horodatage facultatif pour chaque entité afin d’analyser les points à l’aide d’une fenêtre spatio-temporelle. Les entités proches les unes des autres dans l’espace et dans le temps sont considérées comme voisines et sont analysées ensemble. | Field |
category_of_interest (Facultatif) | Catégorie de base de l’analyse. L’outil détermine, pour chaque valeur category_of_interest, le degré auquel la catégorie de base est attirée par ou colocalisée avec la valeur de paramètre neighboring_category. | String |
input_feature_for_comparison (Facultatif) | Classe d’entités en entrée contenant les points avec les catégories qui seront comparées. | Feature Layer |
field_for_comparison (Facultatif) | Champ du paramètre input_feature_for_comparison contenant la catégorie à comparer. | Field |
time_field_for_comparison (Facultatif) | Champ de date contenant un horodatage pour chaque entité afin d’analyser vos points à l’aide d’une fenêtre spatio-temporelle. Les entités proches les unes des autres dans l’espace et dans le temps sont considérées comme voisines et sont analysées ensemble. | Field |
category_for_comparison (Facultatif) | Catégorie voisine pour l’analyse. L’outil détermine le degré auquel la valeur de paramètre category_of_interest est attirée par ou isolée de la valeur category_for_comparison. | String |
neighborhood_type | Indique comment les relations spatiales seront définies parmi les entités.
| String |
number_of_neighbors (Facultatif) | Le nombre de voisins autour de chaque entité qui sera utilisé pour tester l’existence de relations locales entre les catégories. Si aucune valeur n’est fournie, la valeur 8 est utilisée par défaut. La valeur fournie doit être suffisamment grande pour détecter les relations entre les entités, tout en étant suffisamment petite pour continuer à identifier les modèles locaux. | Long |
distance_band (Facultatif) | La taille du voisinage est une distance fixe ou constante de chaque entité. Toutes les entités dans cette distance seront utilisées pour tester l’existence de relations locales entre les catégories. Si aucune valeur n’est fournie, la distance utilisée sera la distance moyenne à laquelle chaque entité possède au moins huit voisins. | Linear Unit |
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 |
temporal_relationship_type (Facultatif) | Indique comment les relations temporelles sont définies parmi les entités.
| String |
time_step_interval (Facultatif) | Nombre entier et unité de mesure reflétant le nombre d’unités temporelles composant la fenêtre horaire. | Time Unit |
number_of_permutations (Facultatif) | Nombre de permutations allant être utilisées pour créer une distribution de référence. Le choix du nombre de permutations doit faire l'objet d'un compromis entre précision et augmentation du temps de traitement. Choisissez entre la vitesse et la précision. Des résultats plus robustes et plus précis sont plus longs à calculer.
| Long |
local_weighting_scheme (Facultatif) | Spécifie le type de noyau qui sera utilisé pour fournir la pondération spatiale. Le noyau indique comment les entités sont associées entre elles dans leur voisinage.
| String |
output_table (Facultatif) | Table incluant les quotients de colocalisation globale entre toutes les catégories dans le paramètre Field of Interest (Champ d’intérêt) et toutes les catégories dans le paramètre Field Containing the Neighboring Category (Champ contenant la catégorie voisine). Cette table peut vous aider à déterminer les catégories locales à analyser. Si Datasets without categories (Jeux de données sans catégories) est utilisé comme valeur de paramètre Input Type (Type en entrée), les quotients de colocalisation globale sont calculés pour chaque jeu de données et entre chaque jeu de données. | Table |
Exemple de code
Le script de fenêtre Python ci-dessous illustre l’utilisation de la fonction ColocationAnalysis.
import arcpy
arcpy.env.workspace = r"C:\Analysis"
# Two categories from the same categorical field.
# Find the colocation of elementary schools and middle schools
arcpy.stats.ColocationAnalysis("SINGLE_DATASET", r"Colocation.gdb\Schools",
r"Outputs.gdb\School_Colocation", "Facility_Type", None,
"Elementary", None, None, None, "Middle", "K_NEAREST_NEIGHBORS",
8, None, None, "BEFORE", None, 99, "BISQUARE",
r"Outputs.gdb\Global_School_Colocation")
# Categories from different datasets without categories
# Find the colocation of elementary schools and hospitals
arcpy.stats.ColocationAnalysis("DATASETS_WITHOUT_CATEGORIES", r"Colocation.gdb\Schools",
r"Outputs.gdb\Schools_Hospitals", None, None, '',
r"Colocation.gdb\Hospitals", None, None, '', "DISTANCE_BAND",
None, "30 Kilometers", None, "BEFORE", None, 199, "GAUSSIAN",
None)
# Categories from two datasets
# Find the colocation of elementary schools and hospitals
arcpy.stats.ColocationAnalysis("TWO_DATASETS", r"Colocation.gdb\Schools",
r"Outputs.gdb\Elementary_Hospitals", "Facility_Type", None,
"Elementary", r"Colocation.gdb\Hospitals", None, None, '',
"K_NEAREST_NEIGHBORS", 15, None, None, "BEFORE", None, 499,
"NONE", None)
Le script Python autonome ci-dessous illustre l'utilisation de la fonction ColocationAnalysis.
# Analyze the spatial relationship (colocation) between elementary school locations and hospital locations
# Two categories from the same categorical field.
# Find the colocation of elementary schools and middle schools
intype = "SINGLE_DATASET"
infc_interest = r"Colocation.gdb\Schools"
outfc = r"Outputs.gdb\School_Colocation"
field_interest = "Facility_Type"
time_field = ""
cat_interest = "Elementary"
infc_neigh = ""
field_neigh = ""
time_field_neigh = ""
cat_neigh = "Middle"
neighborhood_type = "K_NEAREST_NEIGHBORS"
num_neighbors = 8
dist_band = ""
swm_file = ""
temporal_type = ""
time_step_interval = ""
num_permutation = 99
weighting_scheme ="BISQUARE"
out_global_tbl = r"Outputs.gdb\Global_School_Colocation"
arcpy.stats.ColocationAnalysis(intype, infc_interest, outfc, field_interest,
time_field, cat_interest, infc_neigh, field_neigh,
time_field_neigh, cat_neigh, neighborhood_type,
num_neighbors, dist_band, swm_file, temporal_type,
time_step_interval num_permutation, weighting_scheme,
out_global_tbl)
# Categories from different datasets without categories
# Find the colocation of schools and hospitals
intype = "DATASETS_WITHOUT_CATEGORIES"
infc_interest = r"Colocation.gdb\Schools"
outfc = r"Outputs.gdb\Schools_Hospitals"
field_interest = ""
time_field = ""
cat_interest = ""
infc_neigh = r"Colocation.gdb\Hospitals"
field_neigh = ""
time_field_neigh = ""
cat_neigh = ""
neighborhood_type = "DISTANCE_BAND"
num_neighbors = ""
dist_band = "30 Kilometers"
swm_file = ""
temporal_type = ""
time_step_interval = ""
num_permutation = 199
weighting_scheme ="GAUSSIAN"
out_global_tbl = ""
arcpy.stats.ColocationAnalysis(intype, infc_interest, outfc, field_interest,
time_field, cat_interest, infc_neigh, field_neigh,
time_field_neigh, cat_neigh, neighborhood_type,
num_neighbors, dist_band, swm_file, temporal_type,
time_step_interval num_permutation, weighting_scheme,
out_global_tbl)
# Categories from two datasets
# Find the colocation of elementary schools and hospitals
intype = "TWO_DATASETS"
infc_interest = r"Colocation.gdb\Schools"
outfc = r"Outputs.gdb\Elementary_Hospitals"
field_interest = "Facility_Type"
time_field = ""
cat_interest = "Elementary"
infc_neigh = r"Colocation.gdb\Hospitals"
field_neigh = ""
time_field_neigh = ""
cat_neigh = ""
neighborhood_type = "K_NEAREST_NEIGHBORS"
num_neighbors = 15
dist_band = ""
swm_file = ""
temporal_type = ""
time_step_interval = ""
num_permutation = 499
weighting_scheme ="NONE"
out_global_tbl = ""
arcpy.stats.ColocationAnalysis(intype, infc_interest, outfc, field_interest,
time_field, cat_interest, infc_neigh, field_neigh,
time_field_neigh, cat_neigh, neighborhood_type,
num_neighbors, dist_band, swm_file, temporal_type,
time_step_interval num_permutation, weighting_scheme,
out_global_tbl)
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?