Enkelvoudige lineaire regressie
Inleiding Dit hoofdstuk sluit aan op hoofdstuk I-9 van het statistiekboek. Er wordt hier steeds gesproken over het verband tussen één afhankelijke variabele Y en één onafhankelijke variabele X. In practicum I-3 is de procedure Linear Regression al ter sprake gebracht om het verband tussen twee variabelen te onderzoeken. In dit hoofdstuk worden verschillende aspecten van enkelvoudige lineaire regressie aan de hand van het databestand REGRES3.SAV verduidelijkt. Voor een beschrijving van dit bestand verwijzen wij naar bijlage 2, pagina 292 van het statistiekboek.
Het enkelvoudige regressiemodel We beginnen met het analyseren van de relatie tussen de onafhankelijke variabele 'aantal bedden per 1000 inwoners in algemene ziekenhuizen' (BED) en de afhankelijke variabele 'aantal opnamen per 1000 ziekenfondsverzekerden' (ZF_OPN). Voordat het model wordt toegepast op het databestand moet eerst onderzocht worden of het regressiemodel een zinvolle samenvatting kan geven van de data. Enkelvoudige lineaire regressie is gebaseerd op het volgende model: Y=β0 + β1X + ε met ε is N(0,σ2) Hierbij is steeds sprake van één onafhankelijke x-variabele. In het volgende hoofdstuk wordt het verband tussen meerdere onafhankelijke x-variabelen en één afhankelijke y-variabele onderzocht.
Het maken van een Scatterplot Zoals in practicum I-3 van dit werkboek is uitgelegd, is het aan te raden, voordat je een lineaire regressie gaat uitvoeren, om te kijken of er mogelijk een verband is tussen de afhankelijke variabele en de onafhankelijke variabele. Om een indruk te krijgen of er sprake is van een lineair verband kun je een puntenwolk (scatterplot) maken. Een puntenwolk is ook zinvol om punten te lokaliseren die sterk afwijken van de overige punten. Deze uitbijters kunnen ontstaan door grote meetfouten, verkeerde codering en/of door situaties die niet verklaard kunnen worden uit het regressiemodel. Een scatterplot wordt aangevraagd middels de menu-optie Graphs → Legacy Dialogs → Scatter/Dot. Kies voor Simple Scatter en klik op Define. Plaats de afhankelijk variabele op de y-as en de onafhankelijke variabele op de xas. In het voorbeeld is de afhankelijke variabele ZF_OPN en de onafhankelijke variabele BED. Hoe je m.b.v de Chart Editor de regressielijn door de puntenwolk kan laten tekenen vind je beschreven in hoofdstuk I-3.
I9-1
SPSS uitvoer Scatterplot ZF_OPN versus BED inclusief regressielijn:
150,00
zf_opn
125,00
100,00
75,00
R Sq Linear = 0,413 50,00
0,00
5,00
10,00
15,00
20,00
25,00
bed
De procedure Linear Regression Via de menu-optie Analyze →Regression → Linear verschijnt het dialoogvenster Linear Regression (zie ook practicum I-3). In het kader onder Dependent geef je de naam op van de afhankelijke variabele (ZF_OPN) en in het kader onder Independent(s) de naam van de onafhankelijke variabele (BED). ENTER geeft de methode aan waarop de regressieanalyse wordt uitgevoerd. Bij het uitvoeren van een enkelvoudige lineaire regressie wordt steeds de methode ENTER gebruikt (dit is overigens de methode die SPSS standaard gebruikt). De regressieanalyse kan worden uitgevoerd met een klik op OK. De volgende uitvoer verschijnt:
SPSS uitvoer Linear Regression: Variables Entered/Removedb
Model 1
Variables Entered BEDa
Variables Removed .
Method Enter
a. All requested variables entered. b. Dependent Variable: ZF_OPN
Deze tabel laat zien dat BED de onafhankelijke variabele is en ZF_OPN de afhankelijke.
I9-2
Model Summaryb
Model 1
R R Square .643a .413
Std. Error of the Estimate 17.4707
Adjusted R Square .401
a. Predictors: (Constant), BED b. Dependent Variable: ZF_OPN
• •
R: de Pearson correlatiecoëfficiënt (.643). R Square: R2, proportie door de regressielijn verklaarde variatie van de afhankelijke variabele (.413, de verklaarde variatie). Std. Error of the Estimate: de standaarddeviatie om de regressielijn, deze is gelijk aan de wortel uit de gemiddelde kwadratensom van de residuen (17.4707).
•
ANOVAb
Model 1
Regression Residual Total
Sum of Squares 10733.971 15261.350 25995.321
Mean Square 10733.971 305.227
df 1 50 51
F 35.167
Sig. .000a
a. Predictors: (Constant), BED b. Dependent Variable: ZF_OPN
De ANOVA ofwel de variantieanalyse tabel: de totale variatie van de afhankelijke variabele wordt gesplitst over twee componenten: een deel dat verklaard wordt door de regressielijn (Sum of Squares Regression) en een deel dat niet verklaard wordt door de regressielijn (Sum of Squares Residual). Van beide componenten wordt het aantal vrijheidsgraden gegeven (df). De gemiddelde kwadratensom (Mean Square) is de som van de kwadraten in afwijking van het gemiddelde gedeeld door het bijbehorend aantal vrijheidsgraden. Voor het residu is dit quotiënt gelijk aan de variantie van de residuen (s2). Dit is een schatting van de variantie van de residuen in de populatie (σ2). Vervolgens wordt de F toets uitgevoerd (F). De nulhypothese luidt dat de regressiehelling β1 in de populatie gelijk is aan 0. De berekende Fwaarde van 35.167 met 1 en 50 vrijheidsgraden en een overschrijdingskans van .000 (Sig.) leidt tot het verwerpen van de nulhypothese. Coefficientsa
Model 1
(Constant) BED
Unstandardized Coefficients B Std. Error 71.904 5.560 5.823 .982
Standardi zed Coefficien ts Beta .643
t 12.931 5.930
Sig. .000 .000
a. Dependent Variable: ZF_OPN
Bovenstaande tabel toont de schattingen van de regressiecoёfficiёnten β0 (Constant, 71.904) en β1 (BED, 5.823) in de populatie (onder kolom B) en hun Standaardfout (kolom Std. Error). De kolom Beta wordt niet behandeld! Aan de hand van de schattingen van de regressieparameters I9-3
kunnen we de regressievergelijking opstellen: ZF_OPN=71.90 + 5.82 BED. De laatste 2 kolommen van de tabel geven de waarden van de t-toets (t) en de bijbehorende overschrijdingskans (Sig). Aan de hand van de twaarde wordt de nulhypothese getoetst dat de bijbehorende regressieparameter β0 respectievelijk β1 gelijk is aan 0. Voor wat betreft het intercept β0, wat in de populatie gelijk is aan het verwachte aantal opnamen als er geen bedden zijn, is deze toets in dit voorbeeld niet interessant, omdat er in de praktijk geen enkel ziekhuis bestaat zonder bedden. Wat betreft β1 is deze toets in een enkelvoudig model (1 onafhankelijke variabele) equivalent aan de F toets van de ANOVA tabel. Hierbij geldt dat F= t2, in ons voorbeeld: 35.167 (F) = 5.9302 (t2). De beide p-waarden zijn gelijk (.000). Geconcludeerd kan worden dat de nulhypothese β1= 0 verworpen wordt, zelfs bij een α van .001.
Drukknoppen Linear Regression Procedure Het dialoogvenster Linear Regression kent een aantal drukknoppen. Hieronder volgt een overzicht van deze drukknoppen met hun mogelijkheden m.u.v. de drukknop Options. Deze wordt in het hoofdstuk meervoudige lineaire regressie analyse van dit werkboek besproken.
Statistics Estimates:
Confidence Intervals: Descriptives: Model Fit :
de regressiecoëfficiënten en hun standaarderrors , t-toetsen met bijbehorende overschrijdingskansen (SPSS geeft dit standaard) een 95 % betrouwbaarheidsinterval voor het intercept en de helling gemiddelde, standaardafwijking en correlatiematrix van afhankelijke en onafhankelijke variabele. R, R2, de standaarddeviatie om de regressielijn, de variantieanalyse tabel met de F-toets en bijbehorende overschrijdingskans.
Save Met behulp van de drukknop Save kunnen onder andere voorspelde waarden (Predicted Values: Unstandardized), Cook's distances, betrouwbaarheidsintervallen (Predicted Intervals: Mean) en predictieintervallen (Predicted Intervals: Individual) berekend worden. Ook residuele waarden kunnen berekend worden in het kader onder Residuals.
Plots Via deze drukknop worden een Normal Probability Plot, een histogram van de gestandaardiseerde residuen en residuenplots gemaakt. Voor het maken van de residuenplot selecteer je *sresid (gestudentiseerde residuen) als Y variabele en *zpred (gestandaardiseerde voorspelde waarden) als X variabele (zie ook hoofdstuk I-3). I9-4
Betrouwbaarheidsintervallen en Predictieintervallen Zoals hierboven is beschreven kan met behulp van de drukknop Save zowel een betrouwbaarheidsinterval als een predictie-interval dat bij een bepaalde x-waarde hoort, berekend worden. Klik op de drukknop Save in het venster Linear Regression. In het kader Prediction Intervals klik je op Mean voor het berekenen van een betrouwbaarheidsinterval en op Individual voor het berekenen van een predictie-interval. Standaard berekent SPSS een 95% betrouwbaarheids- en predictie-interval (het percentage kan ingesteld worden in het venster van de drukknop Save). De voorspelde waarden bereken je door te klikken op Unstandardized onder Predicted Values:
Bij de berekening van betrouwbaarheidsintervallen, predictie-intervallen en voorspelde waarden maakt SPSS nieuwe variabelen aan en geeft daar zelf een naam aan, nl.: • PRE_1 : de voorspelde waarden. • LMCI_1 en UMCI_1: ondergrens en bovengrens voor het 95% betrouwbaarheidsinterval voor elke x-waarde. • LICI_1 en UICI_1 : ondergrens en bovengrens voor het 95% predictie-interval voor een willekeurige y bij een gegeven xwaarde. I9-5
De nieuwe aangemaakte variabelen kunnen bekeken worden in het datavenster of in de uitvoerfile middels de menu-optie Analyze → Reports → Case Summaries. Een voorbeeld: SPSS uitvoer Case Summaries van de verwachte waarden en 95% Betrouwbaarheids- en Predictie intervallen van ZF_OPN behorende bij de verschillende waarden van BED: Case Summariesa
1 2 3 4 5 50 51 52 Total
N
BED 2.42 3.91 4.16 3.45 3.73 5.09 4.99 20.16 52
Unstandardi zed Predicted Value 85.99754 94.66532 96.12741 91.98684 93.61081 101.53386 100.97545 189.26556 52
95% L CI for ZF_OPN mean 78.81768 89.26420 90.92201 86.13475 88.04542 96.66758 96.10484 159.17178 52
95% U CI for ZF_OPN mean 93.17740 100.06643 101.33282 97.83893 99.17620 106.40014 105.84607 219.35933 52
95% L CI for ZF_OPN individual 50.17952 59.16106 60.65240 56.41119 58.08119 66.10702 65.54802 143.0377 52
95% U CI for ZF_OPN individual 121.81556 130.16957 131.60243 127.56249 129.14043 136.96070 136.40289 235.49342 52
a. Limited to first 100 cases.
Bij BED =2.42 is de verwachte waarde (Unstandardized Predicted Value) gelijk aan 85.99. Het 95% Betrouwbaarheidsinterval (= 95%L CI for ZF_OPN mean, U CI for ZF_OPN mean) is gelijk aan (78.82, 93.18). Dat wil zeggen dat met 95% zekerheid gesteld kan worden dat het aangegeven interval het populatiegemiddelde bij een waarde van BED van 2.42 omsluit. Het predictie-interval (=95% L CI for ZF_OPN individual, 95% U CI for ZF_OPN individual) bij BED =2.42 geeft met 95% zekerheid dat bij deze waarde voor BED het aantal opgenomen ziekenfonds patienten tussen 50.18 en 121.82 zou liggen. Merk op dat dit predictie-interval breder is dan het bijbehorende betrouwbaarheidsinterval. Ga dit na door zelf de regressieanalyse uit te voeren! De voorspelde waarden en de betrouwbaarheidsintervallen kunnen wij in het scatterplot weergeven door in de Chart Editor (zie I-3) te kiezen voor Elements → Fit Line at Total. Hiermee wordt de regressielijn door de puntenwolk getekend. Selecteer in het nu verschenen Properties venster het tabblad Fit Line. Kies als Fit Method voor Linear, en klik onder Confidence Intervals op Mean en daarna onderaan op de drukknop Apply. Het betrouwbaarheidsinterval is nu in de puntenwolk getekend. Klik op Close en herhaal vervolgens de hele procedure maar kies daarbij onder Confidence Intervals voor Individual. Nu verschijnt er in dezelfde puntenwolk ook nog eens het predictieinterval:
I9-6
I9-7
SPSS uitvoer Betrouwbaarheids (C.I.) en Predictie (P.I.)intervallen:
150,00
zf_opn
125,00
100,00
75,00 R Sq Linear = 0,413 R Sq Linear = 0,413 R Sq Linear = 0,413 50,00
0,00
5,00
10,00
15,00
20,00
bed
Residuenplot en Normal Probability Plot Uit de puntenwolk van ZF_OPN versus BED valt af te lezen dat de relatie tussen deze beide variabelen bij benadering lineair is. Naast de aanname van lineariteit wordt verondersteld dat de residuen ε onafhankelijk zijn van elkaar en normaal verdeeld zijn met populatiegemiddelde 0 en constante variantie σ2. Om deze aannamen te controleren wordt via de drukknop Plots in het dialoogvenster Linear Regression een histogram, een normal probability plot en een residuenplot van de gestandaardiseerde residuen gemaakt, door te klikken op Histogram, en op Normal probability plot in het kader onder Standardized Residual Plots. Een residuenplot maak je door variabele *SRESID (gestudentiseerde residuen) als Y variabele te selecteren en *ZPRED (gestandaardiseerde voorspelde waarden) als X variabele.
I9-8
25,00
SPSS uitvoer:
Histogram
Dependent Variable: zf_opn
12,5
Frequency
10,0
7,5
5,0
2,5 Mean =1,04E-16 Std. Dev. =0,99 N =52 0,0 -3
-2
-1
0
1
2
Regression Standardized Residual
Het histogram geeft de frequentieverdeling van de gestandaardiseerde residuen weer. In het voorbeeld is de verdeling van de gestandaardiseerde residuen scheef naar links. Normal P-P Plot of Regression Standardized Residual
Dependent Variable: zf_opn
1,0
Expected Cum Prob
0,8
0,6
0,4
0,2
0,0 0,0
0,2
0,4
0,6
Observed Cum Prob
I9-9
0,8
1,0
De normal probability plot zet de cumulatieve verdeling van de standaardnormale verdeling (verticale as) af tegen de cumulatieve gestandaardiseerde residuen (horizontale as) door de bijbehorende percentielen tegen elkaar uit te zetten. Een dergelijke plot wordt ook wel P-P plot genoemd. De lijn geeft aan waar de punten zouden moeten liggen als de aanname van normaliteit juist is. Als de residuen volledig normaal verdeeld zouden zijn, liggen de punten op een rechte lijn die door de oorsprong gaat. In het voorbeeld lijkt dit min of meer het geval te zijn.
Scatterplot
Regression Studentized Residual
Dependent Variable: zf_opn
2
0
-2
-4
-2
0
2
4
6
Regression Standardized Predicted Value
Deze puntenwolk van *SRESID versus *ZPRED zet de gestudentiseerde residuen uit tegen de voorspelde gestandaardiseerde y waarden (residuenplot). Als de aanname van constante variantie correct is, is er geen enkel verband te ontdekken tussen *SRESID en *ZPRED: bewegen we langs de x-as van links naar rechts dan moeten de gestandaardiseerde residuen gemiddeld 0 blijven; ook de spreiding van de gestandaardiseerde residuen rond 0 moet constant blijven. Het histogram en de normal probability plot sluiten redelijk aan bij de normale verdeling. Meer zorgen baart de toenemende residuele waarde die in de residuenplot te zien is.
Outliers en Cook's distance Een maat die aangeeft in hoeverre een case invloedrijk is, is Cook's distance. Een waarde groter dan 1 of veel groter dan de distances van de overige cases is verdacht. Alle cases die op basis hiervan het label 'verdacht' krijgen, dienen onderzocht te worden op fouten. Eventueel moet de analyse herhaald worden na eliminatie van de meest extreme I9-10
8
gevallen. Via de drukknop Save (in het venster Linear regression) kan met een klik op Cook's in het kader Distances de Cook's distances berekend worden. SPSS maakt zelf een nieuwe variabele aan met de naam COO_1 die de waarden van de Cook's Distances bevat. De variabele COO_1 kan in het data venster bekeken worden. Gebruik de procedure Analyze →Reports →Case Summaries om in de uitvoerfile een overzicht van de waarden van deze variabele af te laten drukken. Ook is het nuttig om via Descriptives het maximum en minimum van de Cook’s distances te krijgen om te kijken of er sprake is van outliers. SPSS uitvoer Cook’s Distances: Case Summariesa
1 2 3 4 5 50 51 52 Total
N
REGIO 1.00 2.00 3.00 4.00 5.00 50.00 51.00 52.00 52
Cook's Distance .10256 .00038 .00006 .00597 .00023 .00178 .00796 27.91278 52
a. Limited to first 100 cases.
De uitvoer laat zien dat case 52 (REGIO=52) een mogelijke uitbijter is. Zoals eerder opgemerkt is kunnen uitbijters ontstaan door grote meetfouten, verkeerde codering en/of situaties die niet door het regressiemodel verklaard kunnen worden. De relatie tussen ZF_OPN en BED wordt nogmaals onderzocht, nu met weglating van case 52.Sluit case 52 van de analyse uit met behulp van Data→Select Cases. Klik op If Condition is satisfied en vervolgens op IF. Geef in het kader dat nu verschijnt de voorwaarde REGIO NE 52. (NE betekent: not equal). Sluit dit venster af en laat de regressieanalyse opnieuw uitvoeren. Variables Entered/Removedb
Model 1
Variables Entered BEDa
Variables Removed .
a. All requested variables entered. b. Dependent Variable: ZF_OPN
I9-11
Method Enter
Model Summary
Model 1
R R Square .784a .615
Std. Error of the Estimate 13.6520
Adjusted R Square .607
a. Predictors: (Constant), BED
ANOVAb
Model 1
Regression Residual Total
Sum of Squares 14570.483 9132.485 23702.968
df 1 49 50
Mean Square 14570.483 186.377
F 78.177
Sig. .000a
a. Predictors: (Constant), BED b. Dependent Variable: ZF_OPN Coefficientsa
Model 1
(Constant) BED
Unstandardized Coefficients B Std. Error 37.928 7.347 13.063 1.477
Stan dardi zed Coeff icient s Beta .784
t 5.162 8.842
Sig. .000 .000
a. Dependent Variable: ZF_OPN
Vergelijk bovenstaande uitvoer zonder case 52 met de uitvoer mét case 52 op pagina 3 van dit hoofdstuk. De hoeveelheid verklaarde variatie (R Square) is gestegen van 41.3% naar 61.5%.
I9-12
Beknopte aanwijzingen met betrekking tot de oefeningen van hoofdstuk I-9. Lees dit hoofdstuk eerst goed door!! Voor een beschrijving van de bestanden verwijzen wij naar bijlage 2 van het statistiekboek.
Oefening 9.1 Met de hand.
Oefening 9.2 9.2.b: Voer een enkelvoudige lineaire regressie uit en laat de voorspelde waarden berekenen m.b.v. de drukknop Save.
Oefening 9.5 9.5.g: Gebruik de drukknop Plots van de procedure Linear Regression.
9.5.h,i, en j: Vraag Cook’s distances, Unstandardized Predicted Values, S.E. of mean predictions, en Mean en Individual Intervals op via de drukknop Save van de procedure Linear Regression.
Oefening 9.6 Met de hand.
Oefening 9.7 9.7.b: In de file LOGN_5_1.DAT staan 5000 getallen uit een lognormale verdeling met gemiddelde 5 en standaarddeviatie 1 (deze file bestaat uit één variabele). • Bekijk de opbouw van de file m.b.v. een tekstverwerkingsprogramma • Lees dan deze datafile in via File →Open, waarbij je als bestandstype .dat selecteert. Volg vervolgens de instructies van de Text Import Wizard. Gebruik het delimited formaat • Geef de variabele in SPSS een naam, bijv. X. • Trek uit deze gegevens een steekproef van 1000 cases m.b.v. Data → Select Cases→ Random Sample of Cases (zie ook oefening 3.8) • Maak een histogram met de procedure Frequencies. Laat de frequentietabel niet afdrukken omdat de variabele X uit 1000 waarnemingen bestaat. • Pas vervolgens op de getallen van variabele X een logaritmische transformatie toe met de opdracht Transform →Compute Variable: COMPUTE LOG_X=LG10(X) • Maak van de getransformeerde waarden (= variabele LOG_X) een histogram.
I9-13
9.7.c: Bereken de logaritme (grondtal 10) van de variabele METHOD_B: Compute LOG_B=LG10(METHOD_B) Voor vervolgens een lineaire regressie analyse uit met LOG_B als afhankelijke variabele.
Oefening 9.8 Lees de file RLKENNIS.SAV in die bestaat uit de kennisscores en studiejaren.
9.8.a: Voer een variantieanalyse uit (zie practicum I-8) daarna een lineaire regressie.
9.8.c: Selecteer de eerste 4 studiejaren m.b.v. Data → Select Cases . Geef als conditie: Jaar <=4.
Oefening 9.9 Voer de variabelen X1, Y1, X2 en Y2 in het datavenster in. Gebruik de menuoptie Data → Select cases om een case te verwijderen.
Oefening 9.10 Het gevraagde onder 9.10.a t/m 9.10.f kun je in één keer laten uitvoeren.
Oefening 9.11 vervalt!
I9-14