Principe des 80/20 (Analyse criminelle et sécurité)

Synthèse

Effectue une analyse 80/20 des entités et crée des agrégats de points, des lignes ou des polygones en fonction du nombre d’incidents associés. L’outil calcule un champ de pourcentage cumulé afin d’identifier les emplacements concentrant un nombre important d’incidents.

Utilisation

  • La règle 80-20 est un concept théorique selon lequel la majorité des incidents ont lieu à une minorité de localisations, par exemple 20 pour cent des localisations concentrent 80 pour cent des incidents.

  • Dans le domaine de l’analyse de la criminalité, cet outil peut servir de différentes façons. Les processus d’analyse classiques sont notamment les suivants :

    • Agréger des incidents en agrégats : ce type d’analyse identifie les propriétés avec le nombre le plus élevé d’incidents pour une période spécifique.
    • Agréger des incidents en segments de rue : ce type d’analyse est parfois décrit comme “recherche de rues chaudes”.
    • Agréger des incidents en limites de voisinage spécifiques : ce type d’analyse est parfois décrit comme “recherche de zones chaudes”.
  • Le paramètre Méthode d’agrégation détermine la façon dont l’analyse 80/20 est effectuée, ainsi que le mode d’agrégation des entités ponctuelles en entrée. Les deux méthodes d’agrégation disponibles pour mener à bien l’analyse sont Agrégat et Entité la plus proche, dont la description est fournie ci-après :

    • Agrégat : les entités ponctuelles en entrée seront agrégées en fonction de la méthode d’agrégation Distance définie (DBSCAN) utilisée dans l’outil Agrégation basée sur la densité.
    • Entité la plus proche : les entités ponctuelles en entrée seront associées à l’entité surfacique ou linéaire de comparaison en entrée la plus proche.

  • Les champs suivants seront ajoutés à la sortie lorsque le paramètre Méthode d’agrégation est défini sur Personnalisée :

    • ICOUNT : nombre de points trouvés dans la tolérance d’agrégat pour cet agrégat.
    • PERC : pourcentage du nombre total de points trouvés dans la tolérance d’agrégat pour cet agrégat.
    • CUMU_PERC : pourcentage cumulé du point d’agrégat actuel et de tous les autres points d’agrégat plus importants, calculé avec la valeur ICOUNT.
    • CUMU_LPERC : pourcentage cumulé du point d’agrégat actuel et de tous les autres points d’agrégat plus importants, calculé avec le nombre total d’entités ponctuelles en sortie.

    Les valeurs CUMU_PERC et CUMU_LPERC permettent de déterminer si certaines localisations d’agrégats concentrent une proportion plus importante de crimes, par exemple, 20 pour cent des localisations d’agrégats concentrent 80 pour cent du total des points.

    Les champs suivants seront ajoutés à la sortie lorsque le paramètre Méthode d’agrégation est défini sur Entité la plus proche :

    • ICOUNT : nombre de points trouvés au plus proche des entités linéaires ou surfaciques.
    • PERC : pourcentage du nombre total de points trouvés à proximité ou à l’intérieur des entités linéaires ou surfaciques.
    • CUMU_PERC : pourcentage cumulé de l’entité actuelle et de toutes les autres entités avec des nombres plus élevés, calculé avec la valeur ICOUNT.
    • CUMU_LPERC : pourcentage cumulé de l’entité actuelle et de toutes les autres entités avec des nombres plus élevés, calculé avec le nombre total d’entités linaires ou surfaciques en sortie.
    • INC_KM : nombre d’entités par kilomètre. Cette donnée est ajoutée à la sortie lorsque les valeurs Entités de comparaison en entrée sont des lignes.
    • INC_MI : nombre d’entités par mile. Cette donnée est ajoutée à la sortie lorsque les valeurs Entités de comparaison en entrée sont des lignes.
    • INC_SQKM : nombre d’entités par kilomètre carré. Cette donnée est ajoutée à la sortie lorsque les valeurs Entités de comparaison en entrée sont des polygones.
    • INC_SQMI : nombre d’entités par mile carré. Cette donnée est ajoutée à la sortie lorsque les valeurs Entités de comparaison en entrée sont des polygones.

    Les valeurs CUMU_PERC et CUMU_LPERC permettent de déterminer si certaines entités linéaires ou surfaciques concentrent une proportion plus importante de crimes, par exemple, 20 pour cent des localisations d’entités linéaires ou surfaciques concentrent 80 pour cent du total des points.

    Les enregistrements dans la sortie sont triés en fonction des valeurs des champs générés ICOUNT (nombre d’incidents), CUMU_PERC (pourcentage cumulé), PERC (pourcentage d’incidents) et CUMU_LPERC (pourcentage de localisation cumulé).

  • La classe d’entités en sortie est symbolisée par le champ ICOUNT.

  • La classe d’entités ponctuelles en sortie est symbolisée par une couche de symboles gradués basée sur le nombre d’incidents se produisant à chaque localisation.

Paramètres

ÉtiquetteExplicationType de données
Entités ponctuelles en entrée

Les entités ponctuelles en entrée à utiliser pour la création d’agrégats, de lignes ou de polygones.

Feature Layer
Classe d’entités en sortie

Classe d’entités en sortie.

Lorsque le paramètre Méthode d’agrégation est défini sur Agrégat, la sortie sera une classe d’entités ponctuelles.

Lorsque le paramètre Méthode d’agrégation est défini sur Entité la plus proche, le type de géométrie de la sortie sera identique à celui de la valeur du paramètre Entités de comparaison en sortie.

Feature Class
Tolérance de grappe
(Facultatif)

Distance maximale entre les points à laquelle on considère qu’ils font partie du même agrégat.

Si aucune tolérance d’agrégat n’est spécifiée, l’outil crée un agrégat dans lequel les entités ponctuelles se superposent.

Ce paramètre est actif lorsque le paramètre Méthode d’agrégation est défini sur Agrégat.

Linear Unit
Champs en sortie
(Facultatif)

Champs provenant des entités en entrée qui seront transférés vers la sortie.

Field
Méthode d'agrégation
(Facultatif)

Indique le mode d’agrégation des entités ponctuelles en entrée.

  • AgrégatLes entités ponctuelles en entrée seront agrégées. Il s’agit de l’option par défaut.
  • Entité la plus procheLes entités ponctuelles en entrée seront agrégées à l’entité surfacique ou linéaire de comparaison la plus proche.
String
Entités de comparaison en entrée
(Facultatif)

Classe d’entités surfaciques ou linéaires de comparaison en entrée selon laquelle la valeur du paramètre Entités ponctuelles en entrée est agrégée.

Ce paramètre est actif lorsque le paramètre Méthode d’agrégation est défini sur Entité la plus proche.

Feature Layer

arcpy.ca.EightyTwentyAnalysis(in_features, out_feature_class, {cluster_tolerance}, {out_fields}, {aggregation_method}, {in_comparison_features})
NomExplicationType de données
in_features

Les entités ponctuelles en entrée à utiliser pour la création d’agrégats, de lignes ou de polygones.

Feature Layer
out_feature_class

Classe d’entités en sortie.

Lorsque le paramètre aggregation_method est défini sur POINT_CLUSTER, la sortie sera une classe d’entités ponctuelles.

Lorsque le paramètre aggregation_method est défini sur CLOSEST_FEATURE, le type de géométrie de la sortie sera identique à celui de la valeur du paramètre in_comparison_features.

Feature Class
cluster_tolerance
(Facultatif)

Distance maximale entre les points à laquelle on considère qu’ils font partie du même agrégat.

Si aucune tolérance d’agrégat n’est spécifiée, l’outil crée un agrégat dans lequel les entités ponctuelles se superposent.

Ce paramètre est activé lorsque le paramètre aggregation_method est défini sur POINT_CLUSTER.

Linear Unit
out_fields
[out_fields,...]
(Facultatif)

Champs provenant des entités en entrée qui seront transférés vers la sortie.

Field
aggregation_method
(Facultatif)

Indique le mode d’agrégation des entités ponctuelles en entrée.

  • POINT_CLUSTERLes entités ponctuelles en entrée seront agrégées. Il s’agit de l’option par défaut.
  • CLOSEST_FEATURELes entités ponctuelles en entrée seront agrégées à l’entité surfacique ou linéaire de comparaison la plus proche.
String
in_comparison_features
(Facultatif)

Classe d’entités surfaciques ou linéaires de comparaison en entrée selon laquelle la valeur du paramètre in_features est agrégée.

Ce paramètre est activé lorsque le paramètre aggregation_method est défini sur CLOSEST_FEATURE.

Feature Layer

Exemple de code

Exemple 1 d’utilisation de la fonction EightyTwentyAnalysis (fenêtre Python)

La fenêtre de script Python suivante illustre l’utilisation de la fonction EightyTwentyAnalysis en mode immédiat.

import arcpy
arcpy.env.workspace = r"C:/data/city_pd.gdb"
arcpy.ca.EightyTwentyAnalysis("CallsForService", "80_20_clusters")
Exemple 2 d'utilisation de la fonction EightyTwentyAnalysis (script autonome)

Le script Python suivant illustre l’utilisation de la fonction EightyTwentyAnalysis dans un script autonome.


# Name: EightyTwentyAnalysis.py
# Description: Conducts an 80/20 analysis of 911 calls to determine clusters of calls within 50 meters of each other.

# import system modules 
import arcpy

# Set environment settings
arcpy.env.workspace = r"C:\data\city_pd.gdb"

# Set local variables
in_features = "CallsForService"
out_feature_class = "80_20_clusters"
cluster_tolerance = "50 Meters"
out_fields = ["FULLADDR","RESCITY", "RESSTATE", "RESZIP5"]

# Run EightyTwentyAnalysis
arcpy.ca.EightyTwentyAnalysis(in_features,
                              out_feature_class,
                              cluster_tolerance,
                              out_fields)
Exemple 3 d’utilisation de la fonction EightyTwentyAnalysisStreets (script autonome)

Le script Python ci-dessous illustre l’utilisation de la fonction EightyTwentyAnalysis dans un script autonome Python pour identifier les segments de rue présentant un nombre disproportionné de délits criminels à proximité. Dans l’analyse de la criminalité, ce type d’analyse est parfois décrit comme la recherche de rues chaudes.

# Name: EightyTwentyAnalysisStreets.py
# Description: Conduct an 80/20 analysis of calls for service to determine street segments with a disproportional amount of crimes nearby.

# import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = r"C:\data\city_pd.gdb"

# Set local variables
in_features = "CallsForService"
out_feature_class = "80_20_streets"
comp_features = "city_centerlines"
out_fields = ["STREET_NAME", "L_ADDR_NUM", "R_ADDR_NUM"]

# Run Eighty Twenty Analysis
arpcy.ca.EightyTwentyAnalysis(in_features,
                              out_feature_class,
                              in_comparison_features=comp_features,
                              out_fields=out_fields)

Informations de licence

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

Rubriques connexes