Résumés statistiques (Analyse)

Synthèse

Calcule les résumés statistiques des champs d’une table.

Utilisation

  • La Table en sortie est constituée de champs contenant le résultat de l’opération statistique.

  • Cet outil propose les opérations statistiques suivantes : Somme, Moyenne, Maximum, Minimum, Plage, Écart type, Total, Premier, Dernier, Médiane, Variance et Unique.

  • Un champ est créé pour chaque type de statistique à l’aide de la convention d’affectation de noms suivante : SUM_<field>, MEAN_<field>, MIN_<field>, MAX_<field>, RANGE_<field>, STD_<field>, COUNT_<field>, FIRST_<field>, LAST_<field>, MEDIAN_<field>, VARIANCE_<field>, UNIQUE_<field> et CONCATENATE_<field>, où <field> est le nom du champ en entrée pour lequel la statistique est calculée. Le nom de champ est tronqué à 10 caractères lorsque la table en sortie est une table dBASE.

  • Si la valeur du paramètre Champ de récapitulation est spécifiée, les statistiques sont calculées séparément pour chaque valeur attributaire unique et il existe un enregistrement pour chaque valeur unique de Champ de récapitulation. Si aucune valeur n’est spécifiée pour le paramètre Champ de récapitulation, la valeur du paramètre Table en sortie contient un seul enregistrement.

  • Les valeurs nulles sont exclues de tous les calculs statistiques. Par exemple, la moyenne de 10, 5 et d’une valeur nulle est 7,5 ((10 + 5)/2).

  • Lors de l’utilisation de couches, seules les entités actuellement sélectionnées sont utilisées pour le calcul des statistiques.

Paramètres

ÉtiquetteExplicationType de données
Table en entrée

Table en entrée contenant les champs utilisés pour le calcul des statistiques.

Table View; Raster Layer
Table en sortie

Table en sortie devant stocker les statistiques calculées.

Table
Champs de statistiques
(Facultatif)

Spécifie le ou les champ(s) numérique(s) contenant les valeurs attributaires utilisées pour calculer les statistiques indiquées. Vous pouvez spécifier plusieurs combinaisons de statistiques et de champs. Les valeurs nulles sont exclues de tous les calculs statistiques.

Les champs attributaires textuels peuvent être récapitulés à l’aide de la première et de la dernière statistique. Les champs attributaires numériques peuvent être récapitulés à l’aide de toutes les statistiques.

Types de statistiques disponibles :

  • Somme : additionne les valeurs du champ spécifié.
  • Moyenne : calcule la moyenne du champ spécifié.
  • Minimum : recherche la valeur la plus faible parmi tous les enregistrements du champ spécifié.
  • Maximum : recherche la valeur la plus élevée parmi tous les enregistrements du champ spécifié.
  • Plage : calcule la plage de valeurs (maximum moins minimum) du champ spécifié.
  • Écart type : calcule l’écart type des valeurs du champ spécifié.
  • Total : recherche le nombre de valeurs incluses dans les calculs statistiques. Toutes les valeurs sont comptées à l’exception des valeurs nulles. Pour déterminer le nombre de valeurs nulles dans un champ, utilisez COUNT sur le champ en question, puis sur un autre champ qui ne contient pas de valeurs nulles (par exemple l’OID, s’il est présent), puis soustrayez les deux valeurs.
  • Premier : utilise la valeur du champ spécifié pour le premier enregistrement en entrée.
  • Dernier : utilise la valeur du champ spécifié pour le dernier enregistrement en entrée.
  • Médiane : calcule la médiane de tous les enregistrements du champ spécifié.
  • Variance : calcule la variance de tous les enregistrements du champ spécifié.
  • Unique : calcule le nombre de valeurs uniques du champ spécifié.
  • Concaténer : les valeurs du champ spécifié seront concaténées. Les valeurs peuvent être séparées à l’aide du paramètre Séparateur de concaténation.
Value Table
Champ de récapitulation
(Facultatif)

Champs en entrée utilisés pour calculer des statistiques distinctes pour chaque valeur attributaire unique (ou pour chaque combinaison de valeurs attributaires, si plusieurs champs sont spécifiés).

Field
Séparateur de concaténation
(Facultatif)

Un ou plusieurs caractères utilisés pour concaténer des valeurs lorsque l’option Concaténation est utilisée pour le paramètre Champs de statistiques.

String

arcpy.analysis.Statistics(in_table, out_table, {statistics_fields}, {case_field}, {concatenation_separator})
NomExplicationType de données
in_table

Table en entrée contenant les champs utilisés pour le calcul des statistiques.

Table View; Raster Layer
out_table

Table en sortie devant stocker les statistiques calculées.

Table
statistics_fields
[[field, {statistic_type}],...]
(Facultatif)

Spécifie le ou les champ(s) numérique(s) contenant les valeurs attributaires utilisées pour calculer les statistiques indiquées. Vous pouvez spécifier plusieurs combinaisons de statistiques et de champs. Les valeurs nulles sont exclues de tous les calculs statistiques.

Les champs attributaires textuels peuvent être récapitulés à l’aide de la première et de la dernière statistique. Les champs attributaires numériques peuvent être récapitulés à l’aide de toutes les statistiques.

Types de statistiques disponibles :

  • SUM : additionne les valeurs du champ spécifié.
  • MEAN : calcule la moyenne du champ spécifié.
  • MIN : recherche la valeur la plus faible parmi tous les enregistrements du champ spécifié.
  • MAX : recherche la valeur la plus élevée parmi tous les enregistrements du champ spécifié.
  • RANGE : calcule la plage de valeurs (maximum moins minimum) du champ spécifié.
  • STD : calcule l’écart type des valeurs du champ spécifié.
  • COUNT : recherche le nombre de valeurs incluses dans les calculs statistiques. Toutes les valeurs sont comptées à l’exception des valeurs nulles. Pour déterminer le nombre de valeurs nulles dans un champ, utilisez COUNT sur le champ en question, puis sur un autre champ qui ne contient pas de valeurs nulles (par exemple l’OID, s’il est présent), puis soustrayez les deux valeurs.
  • FIRST : utilise la valeur du champ spécifié pour le premier enregistrement en entrée.
  • LAST : utilise la valeur du champ spécifié pour le dernier enregistrement en entrée.
  • MEDIAN : calcule la médiane de tous les enregistrements du champ spécifié.
  • VARIANCE : calcule la variance de tous les enregistrements du champ spécifié.
  • UNIQUE : calcule le nombre de valeurs uniques du champ spécifié.
  • CONCATENATE : les valeurs du champ spécifié seront concaténées. Les valeurs peuvent être séparées à l’aide du paramètre concatenation_separator.
Value Table
case_field
[case_field,...]
(Facultatif)

Champs en entrée utilisés pour calculer des statistiques distinctes pour chaque valeur attributaire unique (ou pour chaque combinaison de valeurs attributaires, si plusieurs champs sont spécifiés).

Field
concatenation_separator
(Facultatif)

Un ou plusieurs caractères utilisés pour concaténer des valeurs lorsque l’option CONCATENATION est utilisée pour le paramètre statistics_fields.

String

Exemple de code

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

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

import arcpy
arcpy.env.workspace = "C:/data/Habitat_Analysis.gdb"
arcpy.analysis.Statistics("futrds", "C:/output/output.gdb/stats", [["Shape_Length", "SUM"]], "NM")
Exemple 2 d’utilisation de la fonction Statistics (script autonome)

Le script autonome ci-dessous indique la végétation par surface à moins de 150 pieds des routes principales.

# Description: Summarize the vegetation by area within 150 feet of major roads

# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"

# Set local variables
inRoads = "majorrds.shp"
outBuffer = "C:/output/output.gdb/buffer_out"
bufferDistance = "250 feet"
inVegetation = "Habitat_Analysis.gdb/vegtype"
outClip = "C:/output/output.gdb/clip_out"
joinField = "HOLLAND95"
joinTable = "c:/data/vegtable.dbf"
joinedField = "HABITAT"
outStatsTable = "C:/output/output.gdb/stats_out"
statsFields = [["Shape_Area", "SUM"]]

# Run Buffer to get a buffer of major roads
arcpy.analysis.Buffer(inRoads, outBuffer, bufferDistance, dissolve_option="ALL")

# Run Clip using the buffer output to get a clipped feature class of 
# vegetation
arcpy.analysis.Clip(inVegetation, outBuffer, outClip)

# Run JoinField to add the vegetation type
arcpy.management.JoinField(outClip, joinField, joinTable, joinField, joinedField)

# Run Statistics to get the area of each vegetation type within the 
# clipped buffer.
arcpy.analysis.Statistics(outClip, outStatsTable, statsFields, joinedField)
Exemple 3 d’utilisation de la fonction Statistics (script autonome)

Le script autonome suivant effectue une boucle sur les champs attributaires d’un jeu de données et génère le paramètre statistics_fields de sorte que la statistique SUM soit calculée pour chaque champ numérique.

# Description: Script that runs the Summary Statistics tool to calculate the
#              Sum statistic for every numeric field based on a unique case 
#              field.

# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data/f.gdb"

# Set local variables
intable = "intable"
outtable = "sumstats"
casefield = "Name"
stats = []

# Loop through all fields in the Input Table
for field in arcpy.ListFields(intable):

    # Find the fields that have a numeric type
    if field.type in ("Double", "Integer", "Single", "SmallInteger"):
        # Add the field name and Sum statistic type to the list of fields to 
        # summarize
        stats.append([field.name, "Sum"])
# Correct formatting of stats [["Field1", "Sum"], ["Field2", "Sum"], ...]

# Run Statistics with the stats list
arcpy.analysis.Statistics(intable, outtable, stats, casefield)
Exemple 4 d’utilisation de la fonction Statistics (script autonome)

Le script suivant utilise un pandas DataFrame pour accéder aux résultats tabulaires de la fonction Statistics et les afficher.

import arcpy
import pandas
import os

arcpy.env.overwriteOutput = True

in_table = r"d:\data\states.shp"
out_table = r"in_memory\stats_table"
stat_fields = [['POP1990', 'SUM'], ['POP1997', 'SUM']]

stats = arcpy.analysis.Statistics(in_table, out_table, stat_fields,
                                  case_field='SUB_REGION')

# Get a list of field names to display
field_names = [i.name for i in arcpy.ListFields(out_table) if i.type != 'OID']

# Open a cursor to extract results from stats table
cursor = arcpy.da.SearchCursor(out_table, field_names)

# Create a pandas DataFrame to display results
df = pandas.DataFrame(data=[row for row in cursor],
                      columns=field_names)

print(df)

Informations de licence

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

Rubriques connexes