202511122158 Status: school Tags: Datascience, correlation, non-linear correlation
distance correlation
De distance correlation meet niet alleen lineaire relaties (zoals pearson correlation), maar ook niet-lineaire verbanden tussen variabelen.
Waar Pearson enkel goed werkt bij rechte lijnen, kan distance correlation ook patronen detecteren zoals kromme of complexe relaties.
Kenmerken
- Waarde ligt altijd tussen 0 en 1
- 0 betekent: geen enkele relatie
- 1 betekent: perfecte afhankelijkheid (lineair of niet-lineair)
- Kan relaties detecteren waar pearson correlation r = 0 zou zijn

Python Voorbeeld
# Eerst installeren als nodig:
# conda install dcor -c conda-forge
import dcor
import numpy as np
x = np.array([1, 2, 3, 4, 5], dtype=float)
y = np.array([2, 4, 6, 8, 10], dtype=float) # perfect lineair verband
distance_corr = dcor.distance_correlation(x, y)
print(f"Distance Correlation (tussen 0 en 1): {distance_corr}")Uitleg:
dcor.distance_correlation(x, y)berekent de correlatie op basis van afstanden in plaats van waarden.- Deze methode kijkt naar hoe de afstand tussen punten in de ene variabele overeenkomt met de afstanden in de andere variabele.
Vergelijking met andere methodes
| Kenmerk | Pearson | Spearman | Distance Correlation |
|---|---|---|---|
| Type relatie | Lineair | Monotoon (stijgend of dalend) | Elke vorm |
| Gebruikt rangen? | Nee | Ja | Nee |
| Waardenbereik | -1 tot 1 | -1 tot 1 | 0 tot 1 |
| Detecteert niet-lineaire verbanden? | Nee | Alleen monotone | Ja, alle |
| Detecteert complexe vormen (zoals parabolen)? | Nee | Nee | Ja |
References
Ik was een notitie aan het schrijven over non-linear correlation.