Leer AI met Python · Les

Bivariate en multivariate analyse

Spreidingsdiagrammen, pairplots, correlatieheatmaps en gegroepeerde statistieken.

Les 3 van 413 stappen

Bivariate en multivariate analyse is een gratis Leer AI met Python-les op CoddyKit. Dit is les 3 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Leer AI met Python. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Leer AI met Python bevat in totaal 4 lessen.

Van één variabele naar meerdere

Bivariate analyse bestudeert de relatie tussen twee variabelen; multivariate analyse kijkt naar meerdere variabelen tegelijk.

Het doel is te ontdekken welke kenmerken samen veranderen, interacties op te sporen en te bepalen welke variabelen voorspellend zijn voor je doelvariabele.

Spreidingsdiagrammen met plt.scatter

Een spreidingsdiagram zet twee numerieke variabelen tegen elkaar uit — elke stip staat voor één rij. Zo worden trends, clusters en uitschieters zichtbaar.

import matplotlib.pyplot as plt
import seaborn as sns

plt.scatter(df["height"], df["weight"], alpha=0.4)
plt.xlabel("Height")
plt.ylabel("Weight")
plt.show()

Een spreidingsdiagram lezen

Let op de richting (omhoog = positieve relatie, omlaag = negatieve), de sterkte (een smalle band tegenover een verspreide wolk) en de vorm (lineair tegenover gebogen).

Voeg met sns.scatterplot een hue toe om punten per categorie in te kleuren en de groepsstructuur zichtbaar te maken.

sns.scatterplot(x="height", y="weight", hue="gender", data=df, alpha=0.5)
plt.show()

Correlatie met df.corr()

df.corr() berekent de paarsgewijze Pearson-correlatie tussen numerieke kolommen: een getal van -1 tot +1.

  • +1 → perfecte positieve lineaire relatie
  • 0 → geen lineaire relatie
  • -1 → perfecte negatieve lineaire relatie
corr = df.corr(numeric_only=True)
print(corr["price"].sort_values(ascending=False))

Correlatiewarmtekaarten

Een correlatiematrix is gemakkelijker te lezen als warmtekaart. Geef annot=True mee om de waarden in elke cel weer te geven.

Gebruik een divergerende kleurenschaal, bijvoorbeeld coolwarm, zodat positieve en negatieve correlaties verschillende kleuren krijgen.

corr = df.corr(numeric_only=True)
sns.heatmap(corr, annot=True, fmt=".2f", cmap="coolwarm", center=0)
plt.show()

Multicollineariteit herkennen

Wanneer twee kenmerken een zeer hoge correlatie hebben (bijvoorbeeld > 0.9), bevatten ze overbodige informatie. Dit heet multicollineariteit en kan lineaire modellen instabiel maken.

Op de warmtekaart springen zulke overbodige paren eruit, zodat je een van beide kunt verwijderen.

corr = df.corr(numeric_only=True).abs()
high = corr[(corr > 0.9) & (corr < 1.0)]
print(high.dropna(how="all"))

Correlatie is geen causaliteit

Een sterke correlatie betekent niet dat de ene variabele de andere veroorzaakt. Beide kunnen worden beïnvloed door een verborgen derde variabele, of het verband kan toevallig zijn.

Gebruik correlatie om hypotheses te formuleren en valideer die vervolgens met domeinkennis en gecontroleerde analyse.

Paarplots met sns.pairplot

sns.pairplot tekent een raster van spreidingsdiagrammen voor elk paar numerieke kolommen, met histogrammen of KDE-grafieken op de diagonaal.

Dit is de snelste manier om alle bivariate relaties tegelijk globaal te bekijken. Beperk het aantal kolommen bij grote gegevenssets — de benodigde rekenkracht schaalt kwadratisch met het aantal kolommen.

sns.pairplot(df[["height", "weight", "age", "income"]], hue="gender")
plt.show()

Gegroepeerde boxplots

Om een numerieke variabele te relateren aan een categorische variabele, zet je de categorie op de x-as van een boxplot. Zo vergelijk je direct de verdelingen van verschillende groepen.

sns.boxplot(x="city", y="income", data=df)
plt.xticks(rotation=45)
plt.show()

Gegroepeerde aggregaties

Cijfers vullen grafieken aan. Met groupby en agg vat je een numerieke kolom per categorie samen.

Dit is multivariate analyse in tabelvorm — vergelijk gemiddelden, medianen en aantallen naast elkaar.

summary = df.groupby("city")["income"].agg(["mean", "median", "count"])
print(summary.sort_values("mean", ascending=False))

Multivariate grafieken met visuele coderingen

Je kunt drie of meer variabelen in één grafiek verwerken met visuele coderingen: x, y, kleur (hue) en grootte.

Zo zie je hoe relaties veranderen in een derde dimensie zonder afzonderlijke grafieken te maken.

sns.scatterplot(x="height", y="weight", hue="age", size="income", data=df)
plt.show()

Snelle controle: correlatiebereik

Je voert df.corr() uit en ziet tussen twee kenmerken een waarde van -0.85.

Samenvatting: bivariate en multivariate analyse

Je kunt nu relaties tussen variabelen onderzoeken:

  • plt.scatter / sns.scatterplot voor twee numerieke variabelen
  • df.corr() + sns.heatmap(annot=True) voor de correlatiematrix
  • Hoge correlaties wijzen op multicollineariteit (verwijder overbodige kenmerken)
  • sns.pairplot voor een overzicht van alle paren
  • Gegroepeerde boxplots en groupby().agg() voor numeriek tegenover categorisch

Vervolgens koppelen we kenmerken rechtstreeks aan de voorspellingsdoelvariabele.

Gratis beginnen

Leer Python met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
53
Lessen
225

Veelgestelde vragen

Is de les “Bivariate en multivariate analyse” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Leer AI met Python, waaronder “Bivariate en multivariate analyse”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Leer AI met Python bevat in totaal 4 lessen.

Wat leer ik in “Bivariate en multivariate analyse”?

Spreidingsdiagrammen, pairplots, correlatieheatmaps en gegroepeerde statistieken. Je oefent met Leer AI met Python door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Leer AI met Python te beginnen?

Ervaring vooraf is niet nodig. Leer AI met Python op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 4.

Hoe lang duurt de les “Bivariate en multivariate analyse”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Leer AI met Python?

Ja. Elke les over Leer AI met Python bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. EDA-workflow en dataprofielen
  2. Univariate analyse
  3. Bivariate en multivariate analyse
  4. Featureverdeling en doelvariabele analyseren
← Terug naar Leer AI met Python