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á el cálculo de la frecuencia para cada combinación de valores de atributo 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
Frequency_analysis (in_table, out_table, frequency_fields, {summary_fields})
Parámetro | Explicación | Tipo de datos |
in_table | La tabla que contiene los campos que se utilizarán para calcular las estadísticas de frecuencia. Esta tabla puede ser una tabla INFO u OLE DB, una tabla dBase o VPF, o una tabla de clase de entidad. | Table View; Raster Layer |
out_table | La tabla que almacenará las estadísticas de frecuencia calculadas. | Table |
frequency_fields [frequency_fields,...] | El campo o los campos de atributo que se utilizarán para calcular las estadísticas de frecuencia. | Field |
summary_fields [summary_fields,...] (Opcional) | El campo o los campos de atributo para sumar y agregar a la tabla de salida. Los valores nulos se excluyen de este cálculo. | Field |
Muestra de código
Ejemplo de Frecuencia (ventana de Python)
La siguiente secuencia de comandos de la ventana de Python demuestra cómo utilizar la función Frecuencia en 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 (secuencia de comandos independiente)
La siguiente secuencia de comandos independiente demuestra cómo utilizar la función Frecuencia.
# Name: Frequency_Example2.py
# 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 (secuencia de comandos independiente)
La siguiente secuencia de comandos independiente demuestra cómo utilizar muchas funciones de secuencias de comandos de geoprocesamiento, incluida la función Frecuencia.
# Name: Frequency_Example3.py
# Description: Break all multipart features into singlepart 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).getOutput(0))
outCount = int(arcpy.GetCount_management(outFeatureClass).getOutput(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)
Entornos
Información sobre licencias
- ArcGIS Desktop Basic: No
- ArcGIS Desktop Standard: No
- ArcGIS Desktop Advanced: Sí