Reclasser un champ (Gestion des données)

Synthèse

Reclasse les valeurs d’un champ numérique ou de texte dans des classes en fonction de limites définies manuellement ou à l’aide d’une méthode de reclassification.

Illustration

Illustration de l’outil Reclasser un champ
Une variable continue est reclassée en classes discrètes avec des intervalles égaux.

Utilisation

  • Cet outil accepte les classes d’entités ou les vues tabulaires en entrée et modifie les données en entrée.

  • L’outil prend en charge les huit méthodes de reclassification suivantes :

    • Intervalle défini : chaque classe s’étend sur la plage de la valeur du paramètre Taille d’intervalle, en commençant par la valeur minimale du champ. Par exemple, si la taille d’intervalle est de 10, et que la valeur minimale est de 244, la première classe inclut les valeurs comprises entre 244 et 254. Cette méthode est recommandée si une taille d’intervalle en particulier est requise, par exemple, pour reclasser des valeurs de température à l’aide d’une plage de 10 degrés.
    • Equal interval (Intervalle égal) : chaque classe a la même plage, et la taille de la plage est définie par la valeur du paramètre Number of Classes (Nombre de classes). Par exemple, si le nombre de classes est de cinq, et que la plage est comprise entre 0 et 100, la première classe inclut les valeurs comprises entre 0 et 20. Comme pour l’intervalle défini, cette méthode est recommandée si les intervalles sont pertinents et si un nombre spécifique de classes est attendu. Par exemple, si vous voulez reclasser la température en exactement cinq classes de plage égale.
    • Intervalle géométrique : la plage de chaque classe augmente ou diminue géométriquement (ce qui permet de changer de direction une fois) selon le paramètre Nombre de classes. Cette méthode tente de trouver des regroupements naturels dans les données tout en conservant des plages de classes approximativement égales.
    • Manual interval (Intervalle manuel) : les limites supérieures et la valeur reclassée de chaque classe sont également spécifiées dans le paramètre Reclassification Table (Table de reclassification). La valeur reclassée peut être numérique ou textuelle et génère un champ en sortie du même type. Si le texte et les nombres sont fournis pour les valeurs reclassées, le champ en sortie est de type texte. Cette méthode peut être utile si aucune des interruptions de classes dans les autres méthodes n’est appropriée, ou si vous voulez étiqueter les classes avec du texte et non des entiers.
    • Seuils naturels (Jenks) : des interruptions de classes sont créées autour des regroupements naturels dans les données avec l’algorithme des seuils naturels de Jenks défini par le paramètre Nombre de classes. Cette méthode regroupe des valeurs similaires et optimise les différences entre les classes. Cette méthode est utile si aucun intervalle pertinent n’est présent dans les données et que vous voulez trouver des regroupements optimaux. Par exemple, la population totale par ville peut avoir des regroupements naturels.
    • Quantile : les classes comprennent un nombre égal de valeurs dans chacune des valeurs de paramètre Nombre de classes spécifiées. Par exemple, s’il y a 50 valeurs et que le nombre de classes est de cinq, chaque classe comportera 10 enregistrements. Cette méthode est utile pour comprendre où chaque valeur se situe dans les valeurs classées. Par exemple, si vous voulez connaître les endroits où le revenu annuel moyen chute en haut et en bas des 10 quantiles.
    • Écart type : des plages de classes sont créées à l’aide de plusieurs écarts types au-dessus et au-dessous de la moyenne, dont le nombre est spécifié dans le paramètre Nombre d’écarts types. Ceci est utile pour comprendre où les valeurs se situent dans une distribution. Par exemple, vous pouvez reclasser les précipitations d’un écart type pour identifier les zones où les précipitations sont supérieures à deux écarts types par rapport à la moyenne.
    • Valeurs uniques : chaque valeur unique dans un champ de texte se transforme en classe. Ceci peut être utile si vous devez utiliser des catégories à partir d’un champ de texte dans un outil nécessitant un champ numérique. Par exemple, vous voulez convertir des codes de pays alphanumériques en entiers.

  • Lorsque vous choisissez la méthode de classification, tenez compte du type de données et de la façon dont vous allez utiliser les valeurs reclassées. Toutes les méthodes ne peuvent pas être employées pour toutes les applications. Par exemple, pour reclasser plusieurs champs et les utiliser ensemble dans des processus d’analyse, utilisez une technique qui assure une cohérence entre les données, par exemple le quantile, et non une méthode qui varie, par exemple les seuils naturels (Jenks).

  • Si vous sélectionnez le paramètre Inverser les valeurs (Décroissant) (reverse_values = "DESC" dans Python), les classes d’entiers sont inversées de sorte que la classe avec les valeurs les plus basses devient la classe la plus élevée.

  • La méthode de reclassification par quantile crée des classes dans lesquelles chaque classe contient le même nombre d’enregistrements. Cependant, si la valeur du paramètre Number of Classes (Nombre de classes) ne se divise pas équitablement en nombre d’enregistrements, le reste est divisé dans chaque classe par ordre croissant.

  • Pour la méthode par intervalle manuel, au moins une des valeurs de limite supérieure spécifiée doit être supérieure à la valeur minimale dans le champ à reclasser. Les valeurs du champ qui sont supérieures à la limite supérieure maximale spécifiée sont reclassées comme -9999.

  • Pour la méthode par intervalle défini, la valeur du paramètre Interval Size (Taille d’intervalle) doit être assez petite pour créer au moins trois classes.

  • Aucune des méthodes de reclassification n’utilise de structure d’échantillonnage. Vous pouvez obtenir la plage de chaque classe auprès d’autres méthodes de classification qui utilisent l’échantillonnage, telles que la symbologie graduée.

  • L’outil génère des champs qui représentent la classe et la plage de chaque enregistrement, qui sont préfixés avec la valeur du paramètre Nom de champ en sortie. Le champ de classe est un champ d’entiers classés par ordre croissant ou décroissant, et le champ de plage affiche la plage de valeurs de chaque champ. Si le champ à reclasser est un champ de texte, seul le champ de classe est créé. Si la méthode de reclassification est manuelle et qu’aucune valeur de reclassification n’est spécifiée, seul le champ de plage sera créé.

  • Une table de reclassification illustrant la limite supérieure et la valeur reclassée de chaque classe s’affiche dans les messages de géotraitement.

Paramètres

ÉtiquetteExplicationType de données
Table en entrée

La table en entrée ou classe d’entités contenant le champ qui est reclassé.

Table View; Raster Layer; Mosaic Layer
Champ à reclasser

Le champ qui est reclassé. Le champ doit être de type numérique ou texte.

Field
Méthode de reclassification
(Facultatif)

Spécifie la méthode de reclassification qui permet d’utiliser les valeurs de champs dans la valeur du paramètre Champ à reclasser.

  • Intervalle définiLes classes sont créées avec la même plage de classes sur l’étendue des valeurs du champ à reclasser.
  • Intervalle égalLes classes sont créées avec des plages de classes égales divisées en un nombre de classes spécifié. Il s’agit de l’option par défaut.
  • Intervalle géométriqueLes classes sont créées avec des plages de classes géométriquement croissantes ou décroissantes dans un nombre de classes spécifié.
  • Intervalle manuelLes interruptions de classes et les valeurs reclassées sont spécifiées manuellement.
  • Seuils naturels (Jenks)Les classes de regroupements naturels sont créées dans les données à l’aide de l’algorithme des seuils naturels de Jenks.
  • QuantileLes classes sont créées dans lesquelles chaque classe inclut un nombre égal de valeurs.
  • Écart typeLes classes sont créées en ajoutant ou en soustrayant une fraction de l’écart type au-dessus et au-dessous de la valeur moyenne.
  • Valeurs uniquesLes classes sont créées dans lesquelles chaque valeur unique du champ se transforme en classe.
String
Nombre de classes
(Facultatif)

Le nombre de classes cible dans le champ reclassé. Le nombre maximal de classes est 256.

Long
Taille d'intervalle
(Facultatif)

La taille d’intervalles de classe du champ reclassé. La valeur fournie doit aboutir à au moins 3 classes et ne pas dépasser 1 000 classes.

Double
Nombre d’écarts types
(Facultatif)

Indique le nombre d’écarts types utilisé pour le champ reclassé. Les interruptions de classes et les catégories sont créées avec des plages d’intervalles égaux, conservant les proportions de l’écart type par rapport à la moyenne.

  • Un écart typeLes intervalles sont créés avec un écart type. Il s’agit de l’option par défaut.
  • Une moitié d’un écart typeLes intervalles sont créés avec la moitié d’un écart type.
  • Un tiers d’un écart typeLes intervalles sont créés avec un tiers d’un écart type.
  • Un quart d’un écart typeLes intervalles sont créés avec un quart d’un écart type.
String
Table de reclassification
(Facultatif)

La limite supérieure et la valeur reclassée pour la méthode de reclassification manuelle.

Value Table
Inverser les valeurs (Décroissant)
(Facultatif)

Indique comment les valeurs reclassées sont ordonnées.

  • Activé : des valeurs sont attribuées aux classes dans l’ordre décroissant. La valeur 1 est attribuée à la classe avec les valeurs les plus élevées 1, la valeur 2 est attribuée à la classe la plus élevée suivante et ainsi de suite.
  • Désactivé : des valeurs sont attribuées aux classes dans l’ordre croissant. La valeur 1 est attribuée à la classe avec les valeurs les plus faibles 1, la valeur 2 est attribuée à la classe la plus faible suivante et ainsi de suite. Il s’agit de l’option par défaut.

Boolean
Nom du champ en sortie
(Facultatif)

Nom ou préfixe du champ en sortie. Si le champ à reclasser est un champ numérique, deux champs sont créés, et ce nom servira de préfixe pour les noms de champ. Si le champ à reclasser est un champ de texte, un nouveau champ est créé avec ce nom.

String

Sortie obtenue

ÉtiquetteExplicationType de données
Table en entrée mise à jour

La table mise à jour contenant les champs reclassés.

Table View

arcpy.management.ReclassifyField(in_table, field, {method}, {classes}, {interval}, {standard_deviations}, {reclass_table}, {reverse_values}, {output_field_name})
NomExplicationType de données
in_table

La table en entrée ou classe d’entités contenant le champ qui est reclassé.

Table View; Raster Layer; Mosaic Layer
field

Le champ qui est reclassé. Le champ doit être de type numérique ou texte.

Field
method
(Facultatif)

Spécifie la méthode de reclassification qui permet d’utiliser les valeurs de champs dans la valeur du paramètre field.

  • DEFINED_INTERVALLes classes sont créées avec la même plage de classes sur l’étendue des valeurs du champ à reclasser.
  • EQUAL_INTERVALLes classes sont créées avec des plages de classes égales divisées en un nombre de classes spécifié. Il s’agit de l’option par défaut.
  • GEOMETRIC_INTERVALLes classes sont créées avec des plages de classes géométriquement croissantes ou décroissantes dans un nombre de classes spécifié.
  • MANUALLes interruptions de classes et les valeurs reclassées sont spécifiées manuellement.
  • NATURAL_BREAKSLes classes de regroupements naturels sont créées dans les données à l’aide de l’algorithme des seuils naturels de Jenks.
  • QUANTILELes classes sont créées dans lesquelles chaque classe inclut un nombre égal de valeurs.
  • STANDARD_DEVIATIONLes classes sont créées en ajoutant ou en soustrayant une fraction de l’écart type au-dessus et au-dessous de la valeur moyenne.
  • UNIQUE_VALUESLes classes sont créées dans lesquelles chaque valeur unique du champ se transforme en classe.
String
classes
(Facultatif)

Le nombre de classes cible dans le champ reclassé. Le nombre maximal de classes est 256.

Long
interval
(Facultatif)

La taille d’intervalles de classe du champ reclassé. La valeur fournie doit aboutir à au moins 3 classes et ne pas dépasser 1 000 classes.

Double
standard_deviations
(Facultatif)

Indique le nombre d’écarts types utilisé pour le champ reclassé. Les interruptions de classes et les catégories sont créées avec des plages d’intervalles égaux, conservant les proportions de l’écart type par rapport à la moyenne.

  • ONELes intervalles sont créés avec un écart type. Il s’agit de l’option par défaut.
  • HALFLes intervalles sont créés avec la moitié d’un écart type.
  • THIRDLes intervalles sont créés avec un tiers d’un écart type.
  • QUARTERLes intervalles sont créés avec un quart d’un écart type.
String
reclass_table
[reclass_table,...]
(Facultatif)

La limite supérieure et la valeur reclassée pour la méthode de reclassification manuelle.

Value Table
reverse_values
(Facultatif)

Spécifie l’ordre des valeurs reclassées.

  • DESCDes valeurs sont attribuées aux classes dans l’ordre décroissant. La valeur 1 est attribuée à la classe avec les valeurs les plus élevées 1, la valeur 2 est attribuée à la classe la plus élevée suivante et ainsi de suite.
  • ASCDes valeurs sont attribuées aux classes dans l’ordre croissant. La valeur 1 est attribuée à la classe avec les valeurs les plus faibles 1, la valeur 2 est attribuée à la classe la plus faible suivante et ainsi de suite. Il s’agit de l’option par défaut.
Boolean
output_field_name
(Facultatif)

Nom ou préfixe du champ en sortie. Si le champ à reclasser est un champ numérique, deux champs sont créés, et ce nom servira de préfixe pour les noms de champ. Si le champ à reclasser est un champ de texte, un nouveau champ est créé avec ce nom.

String

Sortie obtenue

NomExplicationType de données
updated_table

La table mise à jour contenant les champs reclassés.

Table View

Exemple de code

Exemple 1 d’utilisation de l’outil ReclassifyField (fenêtre Python)

Le script suivant pour la fenêtre Python illustre l’utilisation de la fonction ReclassifyField.


arcpy.management.ReclassifyField("Demographics", "Population", 
      "EQUAL_INTERVAL", 10, None, "", None, None, "Population_EQUAL_INTERVAL")
Exemple 2 d’utilisation de l’outil ReclassifyField (script autonome)

Le script Python autonome ci-dessous illustre l’utilisation de la fonction ReclassifyField.


# Import system modules.
import arcpy

try:
    # Set the workspace and input features.
    arcpy.env.workspace = r"C:\\Reclassify\\MyData.gdb"
    in_table = "Demographics"

    # Set the input field that will be reclassified
    field = "Population"

    # Set the reclassification method
    method = "MANUAL"

    # Set the reclassification table
    reclass_table = "10000 Village;100000 Town;1000000 City"

    # Set the output field name
    output_field_name = "SettlementType"

    # Run the Reclassify Field tool
    arcpy.management.ReclassifyField(in_table, field, method, "", 
          None, "", reclass_Table, None, output_field_name)

except arcpy.ExecuteError:
    # If an error occurred when running the tool, print the error message.
    print(arcpy.GetMessages())

Environnements