Reads a table and a set of fields and creates a new table containing unique field values and the number of occurrences of each unique field value.
The output table will contain the field Frequency and the specified frequency field(s) and summary field(s).
The output table will contain the frequency calculation for each attribute value combination of the specified frequency field(s).
If a summary field is specified, the unique attribute values of the frequency calculation are summarized by the numeric attribute values of each summary field.
When using layers, only the currently selected features are used in calculations.
The table containing the field(s) that will be used to calculate frequency statistics. This table can be an INFO or OLE DB table, a dBASE or a VPF table, or a feature class table.
|Table View; Raster Layer|
The table that will store the calculated frequency statistics.
The attribute field or fields that will be used to calculate frequency statistics.
The attribute field or fields to sum and add to the output table. Null values are excluded from this calculation.
The following Python window script demonstrates how to use the Frequency function in immediate mode.
import arcpy from arcpy import env env.workspace = "C:/data/Portland.gdb/Taxlots" arcpy.Frequency_analysis("taxlots", "C:/output/output.gdb/tax_frequency",["YEARBUILT", "COUNTY"], ["LANDVAL", "BLDGVAL", "TOTALVAL"])
The following stand-alone script demonstrates how to use the Frequency function.
# Name: Frequency_Example2.py # Description: Run Frequency on a table # Author: ESRI # Import system modules import arcpy from arcpy import env # Set environment settings 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)
The following stand-alone script demonstrates how to use many geoprocessing scripting functions, including the Frequency function.
# Name: Frequency_Example3.py # Description: Break all multipart features into singlepart features, # and generate a report of which features were separated. # Author: ESRI # Import system modules import arcpy from arcpy import env # Create variables for the input and output feature classes inFeatureClass = "c:/gdb.mdb/vegetation" outFeatureClass = "c:/gdb.mdb/vegetation_singlepart" # Use error trapping in case a problem occurs when running the tools try: # Add a field to the input (if not already present), this will be used as a unique identifier # Create list of all fields in inFeatureClass fieldList = arcpy.ListFields(inFeatureClass) # Create new empty list to hold field names from inFeatureClass fieldNameList =  # polulate the field name list with field names from inFeatureClass for field in fieldList: fieldNameList = fieldNameList.append(field.name) # if "tmpUID" is not a field name in inFeatureClass, add it if "tmpUID" not in fieldNameList: arcpy.AddField(inFeatureClass, "tmpUID","double") # Determine what the name of the Object ID is describe = arcpy.Describe(inFeatureClass) OidFieldName = describe.OIDFieldName # Calculate the tmpUID to the OID since this is a Personal GDB, wrap the Field inside  exp = "[" + OidFieldName + "]" arcpy.CalculateField_management(inFeatureClass, "tmpUID", exp) # 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 if (arcpy.GetCount_management(inFeatureClass) == (arcpy.GetCount_management(outFeatureClass)): print "The number of features in the input is the same as in the output, so no multipart features were found" else: # 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 "Below is a list of the FIDs of all the multipart features from " + inFeatureClass rows = arcpy.SearchCursor(outFeatureClass + "_freq", "[FREQUENCY] > 1") row = rows.next() while row: print int(row.tmpUID) row = rows.next() except: # If an error occurred, print out the error message print "Error occurred" print arcpy.GetMessages()