cluster_hill_number#

er_evaluation.summary.cluster_hill_number(membership, alpha=1)[source]#

Compute Hill number of a given order.

Hill numbers:

The Hill number of order \(\alpha \geq 0\) of a given probability distribution \(p_i\), \(i =0,1,2, \dots\), is defined as

\[H_\alpha = \left(\sum_{i} p_i^{\alpha} \right)^{1/(1-\alpha)}\]

and continually extended at \(\alpha =0, 1\). Here, we let \(p_i\) be the proportion of clusters of size \(i\).

Parameters:
  • membership (Series) – Membership vector representation of a clustering.

  • alpha (int, optional) – Order of the Hill Number. Defaults to 1.

Returns:

Hill number of order alpha for the given clustering.

Return type:

float

Examples

>>> membership = pd.Series(index=[1,2,3,4,5,6,7,8], data=[1,1,2,3,2,4,4,4])
>>> cluster_hill_number(membership, alpha=0)
3
>>> cluster_hill_number(membership, alpha=1)
2.82842712474619
>>> cluster_hill_number(membership, alpha=np.Inf)
2.0