1. A computer readable storage medium tangibly embodying a program of machine-readable instructions executable by a digital processing apparatus to perform operations for assigning categorical data to a plurality of clusters, the operations comprising: identifying a plurality of categories associated with the data; for each category in the plurality of categories, identifying at least one element associated with the category; specifying a number of clusters to which the data may be assigned; assigning at least some of the data, wherein each assigned datum is assigned to a respective one of the clusters; for at least one of the clusters, determining, for at least one category, the frequency in data assigned to the cluster of at least one element associated with the category; wherein the operation of, for at least one of the clusters, determining, for at least one category, the frequency in data assigned to the cluster of at least one element associated with the category, comprises ascertaining a first count, for each of a plurality of the categories, for at least one element associated with the category, of instances of the element in the data assigned to the cluster; wherein the operations further comprise, for each of a plurality of the categories, for at least one element associated with the category, ascertaining a first tally of instances of the element in the data; wherein the plurality of the categories includes each category, and wherein the at least one element associated with the category includes each element associated with the category; and wherein the first count and the first tally are ascertained using only a portion of the data, wherein the portion of the data used is selected based on the number of instances of elements in respective categories.