Om sambandet inte är linjärt?
description
Transcript of Om sambandet inte är linjärt?
1
Om sambandet inte är linjärt?
Om sambandet till en variabel inte är linjärt så kan vi inkludera ytterligare en term i regressionsmodellen
I en modell med alla förklaringsvariabler inkluderade:
y=β0 + β1·x1 + β2·x2 + β3·x3 + β4·x4 + β5·x32 + ε
Intercept Area Acres Rooms Baths Rooms2 Felterm
Den nya variabeln är alltså antal rum i kvadrat och har ingen praktisk tolkning, men vi kan genomföra en analys där vi förväntar oss ett högt pris om fastigheten har lagom många rum.
2
1383
300000
200000
100000
Rooms
Pri
cePris mot antal rum
3
13121110 9 8 7 6 5 4 3
300000
200000
100000
Rooms
Pri
ce
S = 33631.2 R-Sq = 35.6 % R-Sq(adj) = 34.7 %
- 1606.41 Rooms**2
Price = -45919.6 + 39679.9 Rooms
Regression Plot
4
Vi använder en kvadratisk term i modellen:
y=β0 + β3·x3 + β5·x32 + ε
men vi behåller även originalvariabeln (alltså x3) för att göra modellen mer flexibel.
5
Regression Analysis: Price versus Rooms
The regression equation is
Price = 37969 + 15966 Rooms
Predictor Coef SE Coef T P
Constant 37969 13776 2,76 0,007
Rooms 15966 1860 8,58 0,000
S = 34115 R-Sq = 33,2% R-Sq(adj) = 32,8%
6
Regression Analysis: Price versus Rooms, Rooms_sq
The regression equation is
Price = - 45920 + 39680 Rooms - 1606 Rooms_sq
Predictor Coef SE Coef T P
Constant -45920 38935 -1.18 0.240
Rooms 39680 10477 3.79 0.000
Rooms_sq -1606.4 698.8 -2.30 0.023
S = 33631 R-Sq = 35.6% R-Sq(adj) = 34.7%
båda signifikantaparametern b5 är negativ:
den anpassade funktionen har ett maximum
7
13121110 9 8 7 6 5 4 3
300000
200000
100000
Rooms
Pri
ce
S = 33631.2 R-Sq = 35.6 % R-Sq(adj) = 34.7 %
- 1606.41 Rooms**2
Price = -45919.6 + 39679.9 Rooms
Regression Plot
8
Jämfört med en regression där alla termer är linjära är parametrarna i en kvadratisk regression svårare att tolka.
I modellen =b0 + b3·x3
kan vi säga att priset i snitt för fastigheten ökar med b3 USD
för varje ytterligare rum.
I modellen =b0 + b3·x3 + b5·x32
ökar priset för fastigheten med varje ytterligare rum, men bara upp till ett visst antal rum, sen stabiliseras priset.
y
y
9
Komplexa samband mellan en förklarande variabel och en responsvariabel kan alltså tas med i modellen genom kvadratiska eller även kubiska termer (x3).
Samtidigt måste man fundera på om det verkligen är den här variablen själv som har ett krökt samband till priset eller om det istället är en samspel variabeln ‘antal rum’ och andra förklarande variabler:
en liten fastighet med många rum eller
en stor fastighet med få rum.....
10
Interaktionstermer – samspelstermer
Vi bildar då nya variabeln x1·x3 och analyserar modellen
y=β0 + β1·x1 + β3·x3 + β5·x32 + β6 ·x1·x3
+ ε
bostadsyta antal rum (antal rum)2 bostadsyta*antal rum
11
Regression Analysis: Price versus Area; Rooms; Rooms_sq
The regression equation is
Price = - 15812 + 49,3 Area + 22544 Rooms - 1529 Rooms_sq
Predictor Coef SE Coef T P
Constant -15812 34481 -0,46 0,647
Area 49,326 7,379 6,68 0,000
Rooms 22544 9549 2,36 0,020
Rooms_sq -1529,1 613,6 -2,49 0,014
S = 29528 R-Sq = 50,7% R-Sq(adj) = 49,6%
12
The regression equation isPrice = 862 + 163 Area - 9248 Rooms + 2161 Rooms_sq - 14.0
Area*Rooms
Predictor Coef SE Coef T PConstant 862 34085 0.03 0.980Area 162.78 39.23 4.15 0.000Rooms -9248 14262 -0.65 0.518Rooms_sq 2161 1390 1.56 0.122Area*Roo -14.002 4.759 -2.94 0.004
S = 28783 R-Sq = 53.4% R-Sq(adj) = 52.2%
Samspelstermen har tagit över den kvadratiska termens roll.
13
Regression Analysis: Price versus Area; Rooms; Area*Roo
The regression equation is
Price = - 28051 + 109 Area + 11862 Rooms - 7,32 Area*Roo
Predictor Coef SE Coef T P
Constant -28051 28707 -0,98 0,330
Area 108,55 18,06 6,01 0,000
Rooms 11862 4401 2,70 0,008
Area*Roo -7,321 2,058 -3,56 0,001
S = 28923 R-Sq = 52,7% R-Sq(adj) = 51,7%
14
1 2 3
350025001500500
300000
200000
100000
Area
Pri
ce1... upp till 5 rum; 2... mellan 6 och 8 rum; 3...mer än 8 rum
15
Regressionslinjen som bekriver sambandet mellan priset och bostadsytan är beroende på hur många rum det finns i huset.
I regressionsanalysen för detta datamaterial kan vi alltså ersätta den kvadratiska termen för antal rum med en samspelsterm (bostadsyta * antal rum).
Modellen är då:
y=β0 + β1·x1 + β3·x3 + β6 ·x1·x3
+ ε
De motsvarande linjära termerna (x1 och x2) behåller vi vanligtvis också i modellen.
16
Kvalitativa variablerKvalitativa variabler
• inga numeriskt tolkningsbara värden utan • värden som är koder för olika klasser av observationer.
Ett exempel är en variabel för kön, som kan anta värdet man eller kvinna
En sådan variabel skulle man kunna koda som 0 för män och 1 för kvinnor och därmed använda i en regressionsanlays
Ett annat exempel är en variabel som är 1 för småföretag, 2 för mellanstora företag och 3 för stora företag.
17
För att kunna använda sådana kvalitativa variabler i regressionsanalysen krävs att de görs om till s k indikatorvariabler eller dummyvariabler. (Andra namn är 0/1-variabler resp. dikotoma variabler)
Om vi inför en kodning 0 för män och 1 för kvinnor så har vi redan en indikatorvariabel som direkt kan användas.
I fallet där vi kodar företagen, måste vi skapa flera nya variabler: – en som är 1 om företaget är liten och 0 annars– en som är 1 om företaget är mellanstor och 0 annars
Den tredje variabel som vi kunde skapa (1 om stor, 0 annars) får inte vara med i analysen.
18
företag andraför 0
företag amellanstorför 1
företag andraför 0
företag småför 121 DD
Företag Företagstyp Ursprunglig kod D1 D2
1 Liten 1 1 0
2 Mellanstor 2 0 1
3 Stor 3 0 0
4 Liten 1 1 0
5 Stor 3 0 0
Alltså:
Grundregel:
Om den kvalitativa variabeln har m olika koder eller värden (kallas också nivåer) skall m1 indikatorvariabler användas.
19
Minitab har funktioner för att– manuellt koda om en variabels värden till andra
värden– skapa indikatorvariabler för att ersätta en kvalitativ
variabel
20
I datamaterialet med fastighetspriser skulle vi kunna koda om variabeln ’antal rum’ på följande sätt:
• fastigheter med högst 6 rum
• fastigheter med fler än 6 rum
För att göra detta kan vi skapa en indikatorvariabel som är =0 för fastigheter med högst 6 rum och 1 för övriga, dvs
6 då 0
6 då 1
3
3
x
xD
21
Nu kan vi använda denna indikatorvariabel (dummy) istället för originalvariabeln.
y=β0 + β1·x1 + β7·D + ε
bostadsyta dummy som är 1 om fastigheten har mer än 6 rum
Regression Analysis: Price versus Area, D
The regression equation isPrice = 65668 + 44.2 Area + 10544 D
Predictor Coef SE Coef T PConstant 65668 8072 8.14 0.000Area 44.157 5.445 8.11 0.000D 10544 7098 1.49 0.140
S = 29824 R-Sq = 49.3% R-Sq(adj) = 48.6%
22
Predictor Coef SE Coef T PConstant 65668 8072 8.14 0.000Area 44.157 5.445 8.11 0.000D 10544 7098 1.49 0.140
Om man ignorerar att dummyvariabeln D inte är signifikant så går det att tolka modellen på följande sätt.
Varje fastighet som har 7 rum eller fler får ett försäljningspris som är 10544 USD högre än jämförbar fastighet med färre rum.
Med D=1:
Med D=0:11
11707110
157.4476212157.44)1054465668(
)(1ˆ
xx
xbbbbxbby
11107110 157.44656680ˆ xxbbbxbby
23
0
1
350025001500500
300000
200000
100000
Area
Pric
e
Parallella linjer, men skillnad i y-nivån
24
Eftersom vi såg förut att en samspelsterm (för interaktioner mellan bostadsyta och antal rum) verkar vara bra, kan vi lägger till en sådan även nu.
y=β0 + β1·x1 + β7·D + β8·x1·D + ε
Regression Analysis: Price versus Area, D, Area*D
The regression equation is
Price = 110370 + 7.45 Area - 117259 D + 0.949 Area*D
Predictor Coef SE Coef T P
Constant 110370 3269 33.76 0.000
Area 7.454 2.306 3.23 0.002
D -117259 4856 -24.15 0.000
Area*D 0.94940 0.03055 31.07 0.000
S = 10846 R-Sq = 93.3% R-Sq(adj) = 93.2%
Samtliga variabler är signifikanta och förklaringsgraden är mycket bra.
25
Predictor Coef SE Coef T P
Constant 110370 3269 33.76 0.000
Area 7.454 2.306 3.23 0.002
D -117259 4856 -24.15 0.000
Area*D 0.94940 0.03055 31.07 0.000
Hur blir nu tolkningen av denna modell?
Vi måste återigen skilja på de två fallen med D=0 och D=1.
Med D = 1
Med D = 0
1
1
18170187110
4034.86889
)94940.0454.7()117259110370(
)()(11ˆ
x
x
xbbbbxbbxbby
111087110 454.711037000ˆ xxbbbbxbby
26
I detta fall får vi alltså två regressionslinjer som skiljer sig i både y-nivån (intercept) och lutningen.
Högst 6 rum:
Priset ökar med i genomsnitt 7454 dollar då bostadsytan ökar med 1000 ft2
7 eller fler rum:
Priset ökar med i genomsnitt 8403 dollar då bostadsytan ökar med 1000 ft2
1454.7110370ˆ xy
14034.86889ˆ xy
27
0
1
350025001500500
300000
200000
100000
Area
Pric
e
Det finns ett samband mellan dummyvariabeln (fler än 6 rum eller ej) och bostadsytan. Regressionslinjernas lutningar är olika.
28
Om vi har fler än 2 grupper behöver vi fler dummy variabler.
t.ex. grupp 1: 0 - 4 rum
grupp 2: 5 - 8 rum
grupp 3: 9 -10 rum
grupp 4: 11 – rum o fler
Vi skapar 3 dummy variabler:
antal rum D1 D2 D3
3 1 0 0
6 0 1 0
10 0 0 1
8 0 1 0
3 1 0 0
13 0 0 0
29
Ibland kan vi även arbeta med en annan kodning:
t.ex. grupp 1: 0 - 4 rum 1
grupp 2: 5 - 8 rum 2
grupp 3: 9 -10 rum 3
grupp 4: 11 – rum o fler 4
men detta är bara möjligt om man kan anta att effekten (prisökningen) är samma när man går över från grupp 1 till grupp 2, som när man går över från grupp 2 till grupp 3, osv.
30
Partiellt F-test
Vi har nu en modell för fastighetspriset som använder sig av följande förklarande variabler:– bostadsyta (area)– antal rum (rooms)– samspelsterm (area*rooms)
Dessutom har vi sett att även tomtyta har betydelse. För den sista förklarande variabeln som är tillgänglig (antal badrum) skulle vi kunna anta att den beter sig som variabeln ‘antal rum’. Vi skulle därför kunna använda oss av själva variabeln, men också inkludera en samspelsterm (area*baths).
31
The regression equation isPrice = - 13702 + 76.1 Area + 7323 Acres + 15438 Rooms - 8.59 Area*Rooms - 8432 Baths + 11.8 Area*Baths
Predictor Coef SE Coef T PConstant -13702 22936 -0.60 0.551Area 76.12 15.24 5.00 0.000Acres 7322.9 859.6 8.52 0.000Rooms 15438 4829 3.20 0.002Area*Roo -8.589 2.470 -3.48 0.001Baths -8432 12664 -0.67 0.507Area*Bat 11.761 6.305 1.87 0.064
S = 22897 R-Sq = 70.9% R-Sq(adj) = 69.7%
Förklaringsgraden är ganska bra, men ingen av variablerna som har med antal badrum att göra är signifikant på 5%-nivån.
32
Analysis of Variance
Source DF SS MS F PRegression 6 1.83020E+11 30503276149 58.18 0.000Residual Error 143 74968921395 524258192Total 149 2.57989E+11
Source DF Seq SSArea 1 1.25271E+11Acres 1 44104488077Rooms 1 166184643Area*Roo 1 5897295563Baths 1 5756044237Area*Bat 1 1824349748
F-testet anger att minst en av de ingående x-variablerna har betydelse.
t-testen (på föreg. sida) visar att fyra variabler har det, men inte de två sista.
Räcker det då med 4 förklarande variabler (area, acres, rooms, area*rooms)?
33
Vi kan köra regressionsanalysen en gång till och då lämna bort de två variablerna som inte var signifikanta.The regression equation isPrice = - 12280 + 88.2 Area + 7429 Acres + 10230 Rooms - 5.51 Area*Rooms
Predictor Coef SE Coef T PConstant -12280 23758 -0.52 0.606Area 88.15 15.10 5.84 0.000Acres 7428.8 890.9 8.34 0.000Rooms 10230 3636 2.81 0.006Area*Roo -5.510 1.712 -3.22 0.002
S = 23860 R-Sq = 68.0% R-Sq(adj) = 67.1%
Analysis of Variance
Source DF SS MS F PRegression 4 1.75439E+11 43859815727 77.04 0.000Residual Error 145 82549315379 569305623Total 149 2.57989E+11
Alla variabler signifikanta, något lägre justerat R2-värde.
34
Kan vi jämföra de två modellerna och bestämma om vi ska ha med antal badrum som förklarande variabel?
Den fullständiga modellen kan skrivas:
y= 0 + 1 · x1 2· x2 + 3· x3 + 5· x1x3 + 4· x4 + 6· x1x4 +
där x1=area, x2=acres, x3=rooms, x4=baths och därmed x1x3
samspelet mellan ’area’ och ’rooms’, och x1x4 samspelet mellan ’area’ och ’baths’.
Den reducerade modellen kan skrivas
y= 0 + 1 · x1 2· x2 + 3· x3 + 5· x1x3 +
Det är alltså den modellen, som vi tror kan räcka för att förklara fastighetspriset.
35
Vi vill nu testa om någon av de variabler som vi har tagit bort har (signifikant) betydelse för vilket värde responsvariabeln antar.
Om vi vill testa om någon av x4 och x1x4 skall läggas till blir nollhypotesen:
H0: 4= 6=0
Alternativhyptesen:
H1: minst en av 4, 6 är skild från 0
36
Som testfunktion kan vi använda
där
SSER=Residualkvadratsumman (SSE) i den Reducerade (Reduced) modellen och SSEC=Residualkvadratsumman i den fullständiga modellen (Complete)
k=Antal förklaringsvariabler i den fullständiga modellen
g=Antal förklaringsvariabler i den reducerade modellen
)1/(
)/()(
knSSE
gkSSESSEF
C
CR
Vi testar alltså om minskningen i residualkvadratsumman är så pass stor (när vi lägger till de två variablerna) att vi inte kan ignorera den.
37
Om H0 är sann får F en F-fördelning med k-g och n-k-1 frihetsgrader och vi kan alltså jämföra värdet på F medF[](k-g,n-k-1)
I vårt fall: Den reducerade modellen
Analysis of Variance
Source DF SS MS F PRegression 4 1.75439E+11 43859815727 77.04 0.000Residual Error 145 82549315379 569305623Total 149 2.57989E+11
Den kompletta modellen
Analysis of Variance
Source DF SS MS F PRegression 6 1.83020E+11 30503276149 58.18 0.000Residual Error 143 74968921395 524258192Total 149 2.57989E+11
SSER
SSEC
38
F[0.05](2,143) 3.07 < 7.2296 H0 ska förkastas!
Fastän varken antal badrum eller samspelstermen bostadsyta/antal badrum var signifikant, finns det ändå information i minst en av variablerna.
2296.7
1615057496892139
465749689213998254931537
)1/(
)/()(
knSSE
gkSSESSEF
C
CR
39
Testmetoden kallas Partiellt F-test eftersom vi i ett test testar om en del (partition) av modellen skall uteslutas.
Om vi bara vill testa en enda variabel (om den ska uteslutas eller ej), så är det partiella F-testet ekvivalent med t-testet för denna variabel.
40
Om vi kommer (som i det här fallet) till slutsatsen att det finns information i minst en variabel av alla de vi testade, så får vi gå vidare med att ta reda på vilken variabel det kunde vara.
I vårt fall skulle vi kanske välja att ta bort samspelstermen area*baths och behålla variabeln baths.
The regression equation isPrice = - 9323 + 73.3 Area + 7210 Acres + 9236 Rooms - 5.15
Area*Rooms + 13864 Baths
Predictor Coef SE Coef T PConstant -9323 23011 -0.41 0.686Area 73.33 15.30 4.79 0.000Acres 7210.0 864.8 8.34 0.000Rooms 9236 3532 2.62 0.010Area*Roo -5.153 1.660 -3.10 0.002Baths 13864 4220 3.29 0.001
S = 23093 R-Sq = 70.2% R-Sq(adj) = 69.2%
41
I vissa fall kan vi förenkla beräkningen något:
Vi kan skriva:
SSER –SSEC = SSRC –SSRR
Det går alltså att använda regressionskvadratsummorna istället för residualkvadratsummorna.
)1/(
)/()(
)1/(
)/()(
knSSE
gkSSRSSR
knSSE
gkSSESSEF
C
RC
C
CR
42
Analysis of VarianceSource DF SS MS F PRegression 6 1.83020E+11 30503276149 58.18 0.000Residual Error 143 74968921395 524258192Total 149 2.57989E+11
Source DF Seq SSArea 1 1.25271E+11Acres 1 44104488077Rooms 1 166184643Area*Roo 1 5897295563Baths 1 5756044237Area*Bat 1 1824349748
Vi kan då använda utskriften för enbart den kompletta modellen för att beräkna det partiella F-testet.
SSRC=SSR(Area) + SSR(Acres | Area) + SSR(Rooms | Area, Acres) + + SSR(Area*Rooms | Area, Acres,Rooms ) +
SSR(Baths | Area, Acres, Rooms, Area*Rooms) + SSR (Area*Baths | Area, Acres, Rooms, Area*Rooms,
Baths)
Observera ordningen!
sekventiella regressionskvadratsummor
43
I den reducerade modellen blir:
SSRR= SSR(Area) + SSR(Acres | Area) + SSR(Rooms | Area, Acres)
+ SSR(Area*Rooms | Area, Acres,Rooms )
SSRC – SSRR= SSR(Baths | Area, Acres, Rooms, Area*Rooms) +
+ SSR(Area*Baths | Area, Acres, Rooms, Area*Rooms, Baths)
Source DF Seq SSArea 1 1.25271E+11 SSR(Area)Acres 1 44104488077 SSR(Acres|Area)Rooms 1 166184643 SSR(Rooms|Area, Acres)Area*Roo 1 5897295563 SSR(Area*Rooms|Area, Acres, Rooms)Baths 1 5756044237 osv.Area*Bat 1 1824349748
SSRC-SSRR=5756044237+1824349748=7580393985
SSRR= 1.75439E+11
44
2296.7
1615057496892139
467580393985
)1/(
)/()(
knSSE
gkSSRSSRF
C
RC
45300000200000100000
100000
50000
0
-50000
Fitted Value
Res
idua
l
Residuals Versus the Fitted Values(response is Price)
Något om tranformationer
Antag att vi upptäcker i en residualanalys att slumpvariansen ( 2) ej är konstant.
Detta ser man i ett diagram där residualerna plottas mot anpassade värden (fitted values).
46
Alla slutsatser som vi kan dra med hjälp av modellen, bygger på att vi har konstant varians i datamaterialet. Är variansen inte konstant kan vi alltså inte vara säkra på att slutsatserna är riktiga.
Om variansen inte är konstant kan vi använda oss av en s k transformation av y-värdena.
Följande transformationer är vanligast:
Kvadratrotstransformationen kräver att y är 0, men så är ofta fallet för just ekonomiskt anknutna data.
yyg )(
yyg ln)(
Logaritmtransformationen kräver att y > 0 och kan ge problem för vissa variabler som ibland faktiskt är just 0.
47
Andra transformationer kan också väljas, men de är mer sällsynta.
Vi prövar nu att
1) Beräkna kvadratroten ur variabeln Price (fastighetspris) och använda den resulterande variabeln som vår nya responsvariabel y.
2) Logaritmera variabeln Price och använda den resulterande variabeln som vår nya responsevariabel y.
48
Rottransormationen:
The regression equation issqrt(price) = 160 + 0.101 Area + 7.97 Acres + 15.3 Rooms - 0.00790 Area*Rooms + 18.3 Baths
Predictor Coef SE Coef T PConstant 159.94 27.37 5.84 0.000Area 0.10125 0.01819 5.56 0.000Acres 7.965 1.029 7.74 0.000Rooms 15.280 4.201 3.64 0.000Area*Roo -0.007903 0.001975 -4.00 0.000Baths 18.345 5.020 3.65 0.000
S = 27.47 R-Sq = 72.3% R-Sq(adj) = 71.4%
49
500400300
100
50
0
-50
Fitted Value
Res
idua
lResiduals Versus the Fitted Values
(response is sqrt(pri)
300000200000100000
100000
50000
0
-50000
Fitted Value
Res
idua
l
Residuals Versus the Fitted Values(response is Price)
Inte mycket förändring.
Rot-transformation
utan transformation
50
Log-Transformationen
The regression equation isloge(Price) = 10.6 +0.000572 Area + 0.0355 Acres + 0.0987
Rooms-0.000049 Area*Rooms + 0.0966 Baths
Predictor Coef SE Coef T PConstant 10.6057 0.1353 78.40 0.000Area 0.00057159 0.00008992 6.36 0.000Acres 0.035502 0.005084 6.98 0.000Rooms 0.09874 0.02076 4.76 0.000Area*Roo -0.00004860 0.00000976 -4.98 0.000Baths 0.09663 0.02481 3.90 0.000
S = 0.1358 R-Sq = 73.7% R-Sq(adj) = 72.8%
51300000200000100000
100000
50000
0
-50000
Fitted Value
Res
idua
l
Residuals Versus the Fitted Values(response is Price)
Här kan man faktiskt se en förändring.
Variansen blir mer konstant med log-transformationen.
12.712.211.711.2
0.4
0.3
0.2
0.1
0.0
-0.1
-0.2
-0.3
-0.4
Fitted Value
Res
idua
lResiduals Versus the Fitted Values
(response is loge(Pri)
Log-transform
utan transformation
52
Men observera: när vi vill göra en prediktion, får vi ett transformerat värde:
Predicted Values for New Observations
New Obs Fit SE Fit 95.0% CI 95.0% PI1 11.7773 0.0156 ( 11.7464, 11.8081) ( 11.5072, 12.0474)
Values of Predictors for New Observations
New Obs Area Acres Rooms Area*Roo Baths1 1500 0.400 6.00 9000 1.50
Om prediktionen vi får som svar är 11.78, så är värdet vi egentligen söker:
78.130613ˆ 78.11ˆ eey ty
53
Vi måste också transformera tillbaka konfidensintervall och prediktionsintervall.