Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Udførelse af Hierarkisk Klyngedannelse | Sektion
Statistisk Visualisering med Seaborn

bookUdførelse af Hierarkisk Klyngedannelse

Et clustermap er et matrixplot, der kombinerer et heatmap med hierarkisk klyngedannelse.

Hvor et standard heatmap viser data i et fast gitter, omarrangerer et clustermap rækker og kolonner for at placere lignende værdier ved siden af hinanden. De træ-lignende diagrammer på akserne kaldes dendrogrammer, og de viser, hvordan datapunkterne er grupperet.

Centrale parametre

For at styre, hvordan klyngedannelsen fungerer, kan du bruge disse parametre:

  • standard_scale: standardiserer dataene (0 for rækker, 1 for kolonner), så hver variabel har et gennemsnit på 0 og en varians på 1. Dette er afgørende, når variabler har forskellige enheder;
  • metric: afstandsmålet der skal bruges (f.eks. 'euclidean', 'correlation'). Det bestemmer, hvad "lignende" betyder;
  • method: den sammenkoblingsalgoritme der skal bruges (f.eks. 'single', 'complete', 'average'). Det bestemmer, hvordan klynger grupperes.

Eksempel

Her er et clustermap af Iris-datasættet. Bemærk, hvordan arterne (rækkerne) automatisk grupperes sammen, fordi de har lignende målinger.

12345678910111213141516171819
import seaborn as sns import matplotlib.pyplot as plt # Load dataset df = sns.load_dataset('iris') # Prepare matrix (drop non-numeric column for calculation) species = df.pop("species") # Create a clustermap sns.clustermap( data=df, standard_scale=1, # Normalize columns metric='euclidean', # Measure distance method='average', # clustering method cmap='viridis', figsize=(6, 6) ) plt.show()
copy
Opgave

Swipe to start coding

Analyser flypassagerdataene for at finde ligheder mellem år.

  1. Indstil stilen til 'ticks'. Skift baggrundsfarven til 'seagreen' ('figure.facecolor').
  2. Opret et clustermap ved hjælp af den omformede upd_df DataFrame:
  • Angiv upd_df som data.
  • Normaliser kolonnerne ved at sætte standard_scale til 1.
    • Brug 'single' som klynge-metode.
    • Brug 'correlation' som afstands-metrik.
  • Vis værdier i cellerne (annot=True).
  • Angiv værdigrænser: vmin=0 og vmax=10.
  • Brug farvekortet 'vlag'.
  1. Vis plottet.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 17
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

close

bookUdførelse af Hierarkisk Klyngedannelse

Stryg for at vise menuen

Et clustermap er et matrixplot, der kombinerer et heatmap med hierarkisk klyngedannelse.

Hvor et standard heatmap viser data i et fast gitter, omarrangerer et clustermap rækker og kolonner for at placere lignende værdier ved siden af hinanden. De træ-lignende diagrammer på akserne kaldes dendrogrammer, og de viser, hvordan datapunkterne er grupperet.

Centrale parametre

For at styre, hvordan klyngedannelsen fungerer, kan du bruge disse parametre:

  • standard_scale: standardiserer dataene (0 for rækker, 1 for kolonner), så hver variabel har et gennemsnit på 0 og en varians på 1. Dette er afgørende, når variabler har forskellige enheder;
  • metric: afstandsmålet der skal bruges (f.eks. 'euclidean', 'correlation'). Det bestemmer, hvad "lignende" betyder;
  • method: den sammenkoblingsalgoritme der skal bruges (f.eks. 'single', 'complete', 'average'). Det bestemmer, hvordan klynger grupperes.

Eksempel

Her er et clustermap af Iris-datasættet. Bemærk, hvordan arterne (rækkerne) automatisk grupperes sammen, fordi de har lignende målinger.

12345678910111213141516171819
import seaborn as sns import matplotlib.pyplot as plt # Load dataset df = sns.load_dataset('iris') # Prepare matrix (drop non-numeric column for calculation) species = df.pop("species") # Create a clustermap sns.clustermap( data=df, standard_scale=1, # Normalize columns metric='euclidean', # Measure distance method='average', # clustering method cmap='viridis', figsize=(6, 6) ) plt.show()
copy
Opgave

Swipe to start coding

Analyser flypassagerdataene for at finde ligheder mellem år.

  1. Indstil stilen til 'ticks'. Skift baggrundsfarven til 'seagreen' ('figure.facecolor').
  2. Opret et clustermap ved hjælp af den omformede upd_df DataFrame:
  • Angiv upd_df som data.
  • Normaliser kolonnerne ved at sætte standard_scale til 1.
    • Brug 'single' som klynge-metode.
    • Brug 'correlation' som afstands-metrik.
  • Vis værdier i cellerne (annot=True).
  • Angiv værdigrænser: vmin=0 og vmax=10.
  • Brug farvekortet 'vlag'.
  1. Vis plottet.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 17
single

single

some-alt