Hoe nul- en resterende afwijkingen te interpreteren (met voorbeelden)
Telkens wanneer u een algemeen lineair model past (zoals logistische regressie, Poisson-regressie, enz.), produceert de meeste statistische software waarden voor de nulafwijking en de resterende afwijking van het model.
Nulafwijking vertelt ons hoe goed de responsvariabele kan worden voorspeld door een model met alleen een originele term.
De resterende afwijking vertelt ons hoe goed de responsvariabele kan worden voorspeld door een model met p- voorspellingsvariabelen. Hoe lager de waarde, hoe beter het model de waarde van de responsvariabele kan voorspellen.
Om te bepalen of een model ‘bruikbaar’ is, kunnen we de Chi-kwadraatstatistiek als volgt berekenen:
X 2 = Geen afwijking – Resterende afwijking
met p vrijheidsgraden.
We kunnen dan de p-waarde vinden die bij deze Chi-kwadraatstatistiek hoort. Hoe lager de p-waarde, hoe beter het model in de dataset past vergeleken met een model met alleen een originele term.
Het volgende voorbeeld laat zien hoe u de nulafwijking en de resterende afwijking voor een logistisch regressiemodel in R kunt interpreteren.
Voorbeeld: interpretatie van nulafwijking en resterende afwijking
Voor dit voorbeeld gebruiken we de standaarddataset uit het ISLR-pakket. We kunnen de volgende code gebruiken om een samenvatting van de dataset te laden en weer te geven:
#load dataset data <- ISLR::Default #view summary of dataset summary(data) default student balance income No:9667 No:7056 Min. : 0.0 Min. : 772 Yes: 333 Yes:2944 1st Qu.: 481.7 1st Qu.:21340 Median: 823.6 Median: 34553 Mean: 835.4 Mean: 33517 3rd Qu.:1166.3 3rd Qu.:43808 Max. :2654.3 Max. :73554
Deze dataset bevat de volgende informatie over 10.000 personen:
- standaard: geeft aan of een persoon in gebreke is gebleven of niet.
- student: geeft aan of een persoon student is of niet.
- saldo: Gemiddeld saldo dat door een individu wordt bijgehouden.
- inkomen: inkomen van het individu.
We zullen de studentenstatus, het banksaldo en het inkomen gebruiken om een logistisch regressiemodel op te bouwen dat de waarschijnlijkheid voorspelt dat een bepaald individu in gebreke blijft:
#fit logistic regression model model <- glm(default~balance+student+income, family=" binomial ", data=data) #view model summary summary(model) Call: glm(formula = default ~ balance + student + income, family = "binomial", data = data) Deviance Residuals: Min 1Q Median 3Q Max -2.4691 -0.1418 -0.0557 -0.0203 3.7383 Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) -1.087e+01 4.923e-01 -22.080 < 2e-16 *** balance 5.737e-03 2.319e-04 24.738 < 2e-16 *** studentYes -6.468e-01 2.363e-01 -2.738 0.00619 ** income 3.033e-06 8.203e-06 0.370 0.71152 --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 (Dispersion parameter for binomial family taken to be 1) Null deviance: 2920.6 on 9999 degrees of freedom Residual deviance: 1571.5 on 9996 degrees of freedom AIC: 1579.5 Number of Fisher Scoring iterations: 8
We kunnen de volgende waarden in de uitvoer waarnemen voor nul- en restafwijking:
- Nulafwijking : 2920,6 met df = 9999
- Resterende afwijking : 1571,5 met df = 9996
We kunnen deze waarden gebruiken om de X 2- statistiek van het model te berekenen:
- X 2 = Geen afwijking – Resterende afwijking
- X2 = 2910,6 – 1579,0
- X2 = 1331,6
Er zijn p = 3 vrijheidsgraden van voorspellende variabelen.
We kunnen deChi-kwadraat naar P-waarde-calculator gebruiken om te ontdekken dat een X 2- waarde van 1331,6 met 3 vrijheidsgraden een p-waarde heeft van 0,000000.
Omdat deze p-waarde veel kleiner is dan 0,05, kunnen we concluderen dat het model zeer nuttig is bij het voorspellen van de waarschijnlijkheid dat een bepaald individu in gebreke blijft.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u logistieke regressie in de praktijk kunt uitvoeren in R en Python:
Hoe logistische regressie uit te voeren in R
Hoe logistieke regressie uit te voeren in Python