Find the silhouettes (12.9) for K-means clustering from the data and and the groups' centers.

silhouette.km(x, centers)

Arguments

x

The \(N \times P\) data matrix.

centers

The \(K \times P\) matrix of centers (means) for the \(K\) Clusters, row \(k\) being the center for cluster \(K\).

Value

The \(n\)-vector of silhouettes, indexed by the observations' indices.

Details

This function is a bit different from the silhouette function in the cluster package, Maechler et al., 2005.

Examples


# Uses sports data.
data(sportsranks)

# Obtain the K-means clustering for sports ranks.
kms <- kmeans(sportsranks, centers = 5, nstart = 10)

# Silhouettes
sil <- silhouette.km(sportsranks, kms$centers)