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
Oefeninstructies
- Genereer een k-meansmodel
pam_k2metpam()metk = 2op delineup-data. - Plot de silhouettenanalyse met
plot(silhouette(model)). - Herhaal de eerste twee stappen voor
k = 3en sla het model op alspam_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