Basis van hiërarchisch clusteren

Clusteranalyse in Python

Shaumik Daityari

Business Analyst

Afstandsmatrix maken met linkage

scipy.cluster.hierarchy.linkage(observations, 
                                method='single', 
                                metric='euclidean', 
                                optimal_ordering=False
)
  • method: hoe de nabijheid van clusters wordt berekend
  • metric: afstandsmaat
  • optimal_ordering: volgorde van datapunten
Clusteranalyse in Python

Welke methode moet je gebruiken?

  • 'single': gebaseerd op twee dichtstbijzijnde objecten
  • 'complete': gebaseerd op twee verst uit elkaar liggende objecten
  • 'average': gebaseerd op het rekenkundig gemiddelde van alle objecten
  • 'centroid': gebaseerd op het meetkundig gemiddelde van alle objecten
  • 'median': gebaseerd op de mediaan van alle objecten
  • 'ward': gebaseerd op de som van kwadraten
Clusteranalyse in Python

Clusterlabels maken met fcluster

scipy.cluster.hierarchy.fcluster(distance_matrix, 
                                 num_clusters,
                                 criterion
)
  • distance_matrix: output van linkage()
  • num_clusters: aantal clusters
  • criterion: hoe drempels worden bepaald om clusters te vormen
Clusteranalyse in Python

Hiërarchisch clusteren met ward-methode

Clusteranalyse in Python

Hiërarchisch clusteren met single-methode

Clusteranalyse in Python

Hiërarchisch clusteren met complete-methode

Clusteranalyse in Python

Laatste tips voor methodekeuze

  • Geen één juiste methode voor alles
  • Begrijp de verdeling van je data goed
Clusteranalyse in Python

Laten we oefenen!

Clusteranalyse in Python

Preparing Video For Download...