Frecuencia (Analysis)

Resumen

Lee una tabla y un conjunto de campos y crea una nueva tabla que contiene valores de campo únicos y el número de apariciones de cada valor de campo único.

Uso

  • La tabla de salida contendrá el campo Frequency y los campos de frecuencia y de resumen especificados.

  • La tabla de salida contendrá la frecuencia para cada combinación única de los campos de frecuencia especificados.

  • Si se especifica un campo de resumen, los valores de atributo numéricos de cada campo resumen resumirán los valores de atributo únicos del cálculo de la frecuencia.

  • Cuando se utilizan capas, solamente se utilizan en los cálculos las entidades actualmente seleccionadas.

Sintaxis

arcpy.analysis.Frequency(in_table, out_table, frequency_fields, {summary_fields})
ParámetroExplicaciónTipo de datos
in_table

La tabla que contiene los campos que se utilizarán para calcular las estadísticas de frecuencia.

Table View; Raster Layer
out_table

Tabla de salida que almacenará las estadísticas de frecuencia.

Table
frequency_fields
[frequency_fields,...]

Los campos utilizados para calcular estadísticas de frecuencia. Cada combinación única de valores de campo se incluirá como una nueva fila de la tabla de salida.

Field
summary_fields
[summary_fields,...]
(Opcional)

Los campos de atributos que se suman y agregan a la tabla de salida. Se sumarán los valores para cada combinación única de campos de frecuencia. Los valores nulos se excluyen de este cálculo.

Field

Muestra de código

Ejemplo de Frecuencia (ventana de Python)

El siguiente script de la ventana de Python demuestra cómo utilizar la función Frequency en el modo inmediato.

import arcpy
arcpy.env.workspace = "C:/data/Portland.gdb/Taxlots"
arcpy.Frequency_analysis("taxlots",
                         "C:/output/output.gdb/tax_frequency",
                         ["YEARBUILT", "COUNTY"],
                         ["LANDVAL", "BLDGVAL", "TOTALVAL"])
Ejemplo 2 de Frecuencia (script independiente)

El siguiente script independiente muestra cómo utilizar la función Frequency.

# Description: Run Frequency on a table
 
# Import system modules
import arcpy
 
# Set environment settings
arcpy.env.workspace = "C:/data/Portland.gdb/Taxlots"
 
# Set local variables
inTable = "taxlots"
outTable = "C:/output/output.gdb/tax_frequency"
frequencyFields = ["YEARBUILT", "COUNTY"]
summaryFields = ["LANDVAL", "BLDGVAL", "TOTALVAL"]
 
# Execute Frequency
arcpy.Frequency_analysis(inTable, outTable, frequencyFields, summaryFields)
Ejemplo 3 de Frecuencia (script independiente)

El siguiente script independiente demuestra cómo utilizar muchas funciones de scripts de geoprocesamiento, incluida la función Frequency.

# Description: Break all multipart features into single part features, 
#  and generate a report of which features were separated.
 
# Import system modules
import arcpy
 
# Create variables for the input and output feature classes
inFeatureClass = "c:/data/gdb.gdb/vegetation"
outFeatureClass = "c:/data/gdb.gdb/vegetation_singlepart"
try:
    # Create list of all fields in inFeatureClass
    fieldNameList = [field.name for field in arcpy.ListFields(inFeatureClass)]
    # Add a field to the input this will be used as a unique identifier
    arcpy.AddField_management(inFeatureClass, "tmpUID", "double")
 
    # Determine what the name of the Object ID is 
    OIDFieldName = arcpy.Describe(inFeatureClass).OIDFieldName
   
    # Calculate the tmpUID to the OID
    arcpy.CalculateField_management(inFeatureClass, "tmpUID",
                                    "[" + OIDFieldName + "]")
 
    # Run the tool to create a new fc with only singlepart features
    arcpy.MultipartToSinglepart_management(inFeatureClass, outFeatureClass)
 
    # Check if there is a different number of features in the output
    #   than there was in the input
    inCount = int(arcpy.GetCount_management(inFeatureClass)[0])
    outCount = int(arcpy.GetCount_management(outFeatureClass)[0])
    
    if inCount != outCount:
        # If there is a difference, print out the FID of the input 
        #   features which were multipart
        arcpy.Frequency_analysis(outFeatureClass,
                                 outFeatureClass + "_freq", "tmpUID")
 
        # Use a search cursor to go through the table, and print the tmpUID 
        print("Multipart features from {0}".format(inFeatureClass))
        for row in arcpy.da.SearchCursor(outFeatureClass + "_freq",
                                         ["tmpUID"], "FREQUENCY > 1"):
            print(int(row[0]))
    else:
        print("No multipart features were found")
except arcpy.ExecuteError:
    print(arcpy.GetMessages())
except Exception as err:
    print(err)

Información de licenciamiento

  • Basic: Sí
  • Standard: Sí
  • Advanced: Sí

Temas relacionados