Aan de slagBegin gratis

Silhouettenanalyse

Met silhouettenanalyse bereken je hoe goed elke observatie past bij het cluster waaraan die is toegewezen, relatief ten opzichte van andere clusters. Deze maat (silhouetbreedte) loopt voor elke observatie in je data van -1 tot 1 en kun je als volgt interpreteren:

  • Waarden dicht bij 1 duiden erop dat de observatie goed past bij het toegewezen cluster
  • Waarden dicht bij 0 suggereren dat de observatie op de grens zit tussen twee clusters
  • Waarden dicht bij -1 suggereren dat de observatie mogelijk aan het verkeerde cluster is toegewezen

In deze oefening gebruik je de functies pam() en silhouette() uit de cluster-bibliotheek om een silhouettenanalyse uit te voeren en de resultaten te vergelijken van modellen met k = 2 en k = 3. Je werkt verder met de lineup-gegevensset.

Let goed op de silhouetgrafiek: hoort elke observatie duidelijk bij het toegewezen cluster voor k = 3?

Deze oefening maakt deel uit van de cursus

Clusteranalyse in R

Bekijk cursus

Oefeninstructies

  • Genereer een k-meansmodel pam_k2 met pam() met k = 2 op de lineup-data.
  • Plot de silhouettenanalyse met plot(silhouette(model)).
  • Herhaal de eerste twee stappen voor k = 3 en sla het model op als pam_k3.
  • Bekijk zeker de verschillen tussen de grafieken voordat je doorgaat (let vooral op observatie 3) voor pam_k3.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

library(cluster)

# Generate a k-means model using the pam() function with a k = 2
pam_k2 <- pam(___, k = ___)

# Plot the silhouette visual for the pam_k2 model
plot(silhouette(___))

# Generate a k-means model using the pam() function with a k = 3
pam_k3 <- ___

# Plot the silhouette visual for the pam_k3 model

Code bewerken en uitvoeren