Regressionsanalys: Interaktionseffekter med kontinuerliga variabler

I det här inlägget ska vi:

  1. Gå igenom när man kan använda interaktionseffekter med kontinuerliga variabler
  2. Hur man gör en sådan analys
  3. Hur man räknar ut effekten vid olika värden av den modererande variabeln
  4. Hur man räknar ut konfidensintervallen

Ett bra verktyg när man vill pröva olika hypoteser är att göra en regressionsanalys med interaktionseffekter, som jag skrivit om i ett tidigare inlägg. Man utgår i modellen från att effekten av en oberoende variabel beror på värdet av en annan oberoende variabel, vilket ofta är rimligt att anta.

I den tidigare guiden skrev jag om hur det här går till när den modererande variabeln (alltså den som avgör vilken effekt den andra variabeln har) är en dummyvariabel, det vill säga har bara två värden. I det här inlägget tänkte jag istället skriva om hur man göra när man har två kontinuerliga variabler, alltså skalor.

I den förra guiden prövade vi ett exempel där en större BNP per capita förväntades leda mer till handel, men att effekten antogs vara olika i demokratier och diktaturer. Vi fick alltså fram två effekter – en av BNP på handel i demokratier, och en av BNP på handel i diktaturer. Hur fungerar det då när vi istället för en dummyvariabel har en skala? Vi får då fram en mängd olika effekter (eller samband), en för varje värde på skalan.

Jag tänkte illustrera detta med en väletablerad teori inom statsvetenskapen – den om resursförbannelsen. Det är välkänt att ekonomisk utveckling ofta hänger ihop med demokrati – rikare länder är oftare demokratiska. Det verkar inte vara så att ekonomisk utveckling nödvändigtvis gör ett land demokratiskt, men det verkar åtminstone motverka att landet förfaller till diktatur. Men teorin om resursförbannelsen visar att detta inte verkar gälla när ett lands rikedomar kommer från naturresurser, till exempel olja. Medans rikedom som bygger på beskattning av industri och handel kräver att regimen tillgodoser folkets intressen, är det bara att pumpa upp olja och sälja. Dessa inkomster kan en diktator sedan använda för att förtrycka folket och behålla makten (grovt förenklat).

Vi bör alltså förvänta oss att se ett samband mellan ekonomisk utveckling och demokrati, men att detta samband ska vara mycket svagare om inkomsterna kommer från olja eller andra naturresurser. Den teoretiska modellen kan beskrivas som i bilden nedan.

Bild 1. Den teoretiska modellen.
Bild 1. Den teoretiska modellen.

Den förväntade effekten av ekonomisk utveckling förväntas alltså bero på hur viktigt det är med naturresurser i ekonomin. Vi testar det här med hjälp av data från Quality of Government-institutets Cross-Sectiondataset.

Först gör vi en regressionsanalys med de två oberoende variablerna BNP/capita (wdi_gdpc) och naturresursberoende (t_fuel) och den beroende variabeln demokrati (fh_ipolity2). För att göra presentationen tydligare har jag gjort en ny bnp-variabel som istället för att visa BNP/capita i dollar visar BNP/capita i tusentals dollar. Detta gör man genom att dividera wdi_gdpc med 1000, under menyn Transform->Compute. Naturresursvariabeln visar hur stor procentandel av exporten som består av fossila bränslen, såsom olja. Demokrativariabeln går från 0 till 10, där högre värden betyder mer demokrati . Resultaten av den första analysen visas i Bild 2.

Bild 2. Regressionsanalys utan interaktionseffekt.
Bild 2. Regressionsanalys utan interaktionseffekt.

Vi ser att båda variablerna har den förväntade effekten. Det är en positiv koefficient för BNP/capita och en negativ för fossila bränslen. Det vi ser är att en ökning av BNP/capita med 1000 dollar förväntas hänga ihop med en ökning av demokrati med 0,08 steg, och en ökning av fossila bränslen i exporten med en procentenhet förväntas hänga ihop med en minskning av demokratin med 0,06 steg. Båda koefficienterna är statistiskt signifikanta.

Genomföra analysen
Men det var inte detta som var vårt huvudsakliga fokus. Vi vill ju se hur den förväntade effekten av ekonomisk utveckling påverkas av nivån av naturresursberoende, i det här fallet operationaliserat som fossila bränslens vikt i exporten. För att göra detta måste vi göra en interaktionsvariabel.

Det gör vi genom att multiplicera BNP-variabeln med variabeln för fossila bränslen, i Transform->Compute. Se Bild 7 i den förra guiden för att se hur man gör. Vi kallar den nya variabeln för inter0, av anledningar som jag ska förklara snart.

Nu gör vi om den förra analysen, och lägger in interaktionsvariabeln. Klicka dessutom under knappen ”statistics” i ”Confidence intervals” för att få fram konfidensintervallen för koefficienterna. Resultaten ser vi i Bild 3.

Bild 3. Analys med interaktionseffekt. Koefficienten för interaktionstermen är signifikant, vilket indikerar att det finns en intressant effekt.
Bild 3. Analys med interaktionseffekt. Koefficienten för interaktionstermen är signifikant, vilket indikerar att det finns en intressant effekt.

Nu har det hänt lite olika saker. Det första vi ska göra när vi tolkar resultaten av en analys med interaktionseffekter är att:

  1. Se på signifikansen på interaktionsvariabeln. Är den inte signifikant, visar det att det inte finns någon interaktionseffekt att tala om. I det här fallet är dock interaktionsvariabeln signifikant.
  2. Se på hur R2 (justerat) förändrats jämfört med modellen utan interaktionseffekt. I det här fallet har det ökat från 0,42 till 0,46, vilket innebär att vår nya modell kan beskriva variationen i den beroende variabeln bättre. Även det visar att det verkar finnas en intressant interaktionseffekt.
  3. Se om koefficienten för interaktionseffekten är positiv eller negativ.

Låt oss nu titta på koefficienterna. Dessa kan inte längre tolkas som vanligt. De är nu beroende av värdet på den andra oberoende variabeln som ingår i interaktionen. Koefficienten för BNP ska nu tolkas som den förväntade effekten av BNP/capita i tusentals dollar på demokrati när variabeln för fossila bränslen har värdet 0. Det vill säga, effekten av BNP/capita i ett land som inte har någon som helst export av fossila bränslen. Koefficienten är 0,12, det vill säga större än effekten vi såg i modellen utan interaktionseffekter. I modellen utan interaktionseffekt visar koefficienten vad effekten är i genomsnitt för alla länder, men nu kan vi se att den i länder utan export av fossila bränslen är något starkare, vilket vi kunde vänta oss från teorin.

Vad betyder då koefficienten för interaktionsvariabeln? Jo, den visar hur effekten av av BNP/capita i tusentals dollar förändras om fossila bränslen som andel av den totala exporten ökar med ett steg, dvs en procentenhet. Det mest intressanta är här att se om den är positiv eller negativ. Nu är den negativ, vilket innebär att ju mer export av fossila bränslen, desto mindre blir effekten av BNP/capita, vilket är vad vår teori förutspådde.

Räkna ut effekten vid olika värden av den modererande variabeln
Nu kanske det verkar som att vår analys är färdig och att vi fått stöd för vår hypotes, men vi skulle i så fall missa en del information som den här analysen ger. Vi vill nu räkna ut vad effekten av BNP/capita är över hela skalan av den andra variabeln. Nu vet vi vad effekten av BNP/capita är i länder utan export av fossila bränslen. Men hur ser den ut i länder med ganska mycket export? Och de länder som är helt beroende av fossila bränslen i sin export?

Vi vet alltså att effekten av BNP/capita är 0,119 i länder utan någon som helst export, och att den här effekten förväntas minska med 0,001 för varje procentenhet mer export. Vi kan alltså få fram effekten för varje värde av export genom att ta 0,1190286+0,0013872*(värdet på export). Om vi till exempel vill veta vad effekten av BNP/capita är i ett land med 10% fossila bränslen i exporten tar vi 0,1190286+(0,0013872*10)=0,1051566. Detta är alltså lägre än 0,119. Sambandet mellan ekonomisk utveckling och demokrati är svagare i de här länderna. De extra decimalerna har jag fått fram genom att dubbelklicka på tabellen och sedan dubbelklicka på de tal jag är intresserad av. I vanliga fall spelar det inte så stor roll, men ett litet avrundningsfel kan växa när vi multiplicerar, och jag är därför extra petig.

Det här görs lättast i Excel, tycker jag. Man kan då skriva in en formel som gör den rätta multiplikationen och sedan kopiera den för varje värde man vill ha fram en effekt för. I Bild 4 visas hur jag har gjort det med 10 procentenheters interavall mellan 0 och 100. Därefter har jag också gjort ett diagram som visar effekten vid olika nivåer. Man ser i diagrammet tydligt att effekten av BNP/capita minskar ju större exporten av fossila bränslen är. När fossila bränslen utgör 90% av den totala exporten är effekten av BNP/capita till och med negativ!

Bild 4. Uträkning av effekten av BNP vid olika värden av bränsleexport.
Bild 4. Uträkning av effekten av BNP vid olika värden av bränsleexport.

Räkna ut konfidensintervallen
VI är dock inte bara intresserade av vad koefficienten är, utan också om de är statistiskt signifikanta. Det kan vi få fram, men det kräver lite arbete. I Bild 3 visades vad effekten av BNP var när exportvariabeln har värdet 0. BNP-koefficienten var då 0,119, och signifikansvärdet var 0,000. Vi kan också se att konfidensintervallet gick från 0,085 till 0,153. Det överlappar inte 0, vilket också visar att effekten är signifikant på 95-procentsnivån. Vi ska nu göra om analysen så att vi får ut motsvarande värden för andra värden på exportlvariabeln.

För att till exempel få ut signifikans och konfidensintervall för effekten av BNP när mineralexporten är 100 procent av den totala exporten gör vi en nya variabel som är bränsleexporten-100. På så vis får den nya variabeln värdet 0 när bränsleexporten är just 100 procent av den totala exporten. Se Bild 5 för hur det går till.

Bild 5. Hur man gör en ny bränsleexportvariabel för att få fram konfidensintervall när bränsleexporten är 100 procent.
Bild 5. Hur man gör en ny bränsleexportvariabel för att få fram konfidensintervall när bränsleexporten är 100 procent.

Därefter får man också göra en ny interaktionsvariabel som är BNP multiplicerat med den nya bränsleexportvariabeln. Denna kallar jag för inter100. Sen gör man om regressionsanalysen, men byter ut den vanliga bränsleexportvariabeln och interaktionsvariabeln mot de nya variablerna. Resultatet visas i Bild 6.

Bild 6. Nu har variabeln för bränsleexport och interaktionsvariabeln bytts ut till de modifierade variablerna.
Bild 6. Nu har variabeln för bränsleexport och interaktionsvariabeln bytts ut till de modifierade variablerna.

Notera att R2-värdet är exakt likadant – vi gör egentligen inget annorlunda, vi förskjuter bara två av variablerna för att få ut lite andra värden i presentationen. Vi kan också se att koefficienten för BNP är -0,020, vilket var det vi fick fram när vi räknade ut vad den skulle vara ”för hand” (Bild 4). Men vi ser nu att signifikansvärdet är 0,550, det vill säga inte signifikant. Konfidensintervallet går också från -0,085 till 0,045, och överlappar därmed noll. Vi kan alltså inte vara säkra på att effekten är något annat än noll, och den är därför inte statistiskt signifikant. Skriv upp konfidensintervallet i Excel-arket.

Därefter gör vi en ny variabel för mineralexport som är t_fuel -50, för att se vad effekten är när bränsleexporten utgör hälften av landets export, gör en ny interaktionsvariabel (inter50), gör om analysen igen, samt noterar konfidensintervallet. Gör detta för de värden du tycker är intressanta. Jag har valt att göra det för 0, 30, 50, 70 och 100. Det går fort om man gör alla variablerna i följd. När jag skrivit in konfidensintervallen i Excel förde jag in dem i diagrammet och gjorde om det till ett linjediagram. Eftersom inte alla punkter är ifyllda behöver man högerklicka på diagrammet, välja ”markera data” och under knappen ”Dolda och tomma celler” välja ”Koppla datapunkter med en linje”. Se resultatet i Bild 7.

Bild 7. Diagram som visar effekt och konfidensintervall över hela skalan av den modererande variabeln.
Bild 7. Diagram som visar effekt och konfidensintervall över hela skalan av den modererande variabeln.

Vad har vi nu fått ut? Jo, ett diagram som visar vad effekten av BNP är vid olika värden av mineralexport, samt vad konfidensintervallet är. Så länge inte det överlappar noll är effekten signifikant. Nu kan vi också se att den börjar göra det strax innan 60%.

Slutsatsen av vår analys blir alltså att högre BNP per capita hänger ihop med högre nivåer av demokrati för länder vars export till mindre än 60 procent består av fossila bränsler. Rätt snyggt!

4 reaktioner till “Regressionsanalys: Interaktionseffekter med kontinuerliga variabler

  1. Hej! Tack för en fin blogg! Jag har letat som en tok på hela internet (känns det som) utan att finna svaret på en fråga. Kanske är jag dålig på att leta, ni kanske till och med att skrivit om det tidigare utan att jag har kunnat hitta det. Men, här kommer den.

    I versioner tidigare än 21 av SPSS kan man om man vill, ta reda på det exakta p-värdet när man får 0,000 i output. Man dubbelklickar på tabellen och sedan dubbelklickar på värdet. Då kommer ex. 6*10^-105 upp. Jag jobbar med den storleksordningen på p-värden och behöver veta exakta p-värdet, men i version 21 så funkar inte detta sätt! Har ni någon aning om hur man gör i den versionen?

    Med vänliga hälsningar
    Maria

  2. Hej! Väldigt bra sida som har räddat oss! Svara gärna om det är så att du fortfarande är aktiv så att man kan ställa frågor? Vänliga hälsningar, Maria

Kommentera

Fyll i dina uppgifter nedan eller klicka på en ikon för att logga in:

WordPress.com-logga

Du kommenterar med ditt WordPress.com-konto. Logga ut /  Ändra )

Twitter-bild

Du kommenterar med ditt Twitter-konto. Logga ut /  Ändra )

Facebook-foto

Du kommenterar med ditt Facebook-konto. Logga ut /  Ändra )

Ansluter till %s