http://data.princeton.edu/stata/
Een geweldige site, met informatie over General Linear Models, Mixed Models, Stata en R.
vrijdag 25 juni 2010
woensdag 23 juni 2010
Multilevel analyse
Er is al veel te veel over multilevel analyse geschreven, vandaar een selectie van termen die voor mij nuttig zijn/waren:
Fixed vs random effects
Fixed vs random effects
- Fixed effects: interindividuele effecten
- Random effects: individuele effecten
Random effecten laten toe dat een bepaalde parameter voor elke eenheid verschilt, waardoor de overige parameters "onafhankelijk" van deze parameter geschat worden.
Voor intercepts is dit heel nuttig: een relatie kan voor elke L2 case gelijk zijn, maar om tal van andere redenen kan het intercept variëren. Een random effect intercept only model toont a.d.h.v. de variantie rond dit intercept (variance components), hoeveel variantie op level 2 bestaat, en dus door variabelen op dat niveau moet worden wegverklaard.
Andere parameters (slopes) kunnen ook op random gezet worden om na te gaan of er nood is aan het inbrengen van verklarende variabelen op level 2 die interageren met slope.
Bij wijze van voorbeeld deze grafiek met data voor acht fictieve landen op een fictieve Y-variabele tussen het jaar 2 en het jaar 12. De groeivoet van Y is zo geconstrueerd dat deze steeds 3% is.
Het belang zit 'm in het verschil tussen de oranje en de rode fitted line. De rode lijn volgt exact de helling van elk land. In dit geval is het gemiddelde van de trends gelijk aan de gemiddelde trend. De oranje trendlijn is gebaseerd op een steekproef uit alle punten (in het groen gemarkeerd): elk land behoudt dezelfde trend, maar hier en daar vallen er cases weg. Door het intercept te randomiseren, zou je ook deze lijn correct inschatten.
Bij wijze van voorbeeld deze grafiek met data voor acht fictieve landen op een fictieve Y-variabele tussen het jaar 2 en het jaar 12. De groeivoet van Y is zo geconstrueerd dat deze steeds 3% is.
Het belang zit 'm in het verschil tussen de oranje en de rode fitted line. De rode lijn volgt exact de helling van elk land. In dit geval is het gemiddelde van de trends gelijk aan de gemiddelde trend. De oranje trendlijn is gebaseerd op een steekproef uit alle punten (in het groen gemarkeerd): elk land behoudt dezelfde trend, maar hier en daar vallen er cases weg. Door het intercept te randomiseren, zou je ook deze lijn correct inschatten.
Intraclass correlatie
Betekenis: het deel van de variantie dat door groepsverschillen wordt verklaard.
Rho = sigma2(u)/som(sigma2u,sigma2res)
De sigma's worden geschat met een intercept only model (xtreg, xtmixed, anova, ... ). Vergeet niet de sigma's te kwadrateren. Voor Bernouilli-schattingen wordt een andere schatter gebruikt
wiki: http://en.wikipedia.org/wiki/Intraclass_correlation
Wanneer een case tot twee niet geneste groepen behoort (vb. land en sector of vakbond en voetbalclub), spreekt men van cross classification op het tweede niveau. Termen als non hierarchical of non nested worden hier ook voor gebruikt.
Er is een kleine omweg voor de case sector en land. Als je verondersteld dat sector een landspecifiek effect heeft, dan kan je de sectoren hernoemen zodat bouw-land A verschilt van bouw-land B. Wat je dan niet onderzoekt is de algemene impact van de bouwsector, maar wel de sectorale impact binnen een land versus de internationale verschillen op level 3.
Interessant, hé.
Links
Three level vs cross classification
Wanneer een case tot twee niet geneste groepen behoort (vb. land en sector of vakbond en voetbalclub), spreekt men van cross classification op het tweede niveau. Termen als non hierarchical of non nested worden hier ook voor gebruikt.
Er is een kleine omweg voor de case sector en land. Als je verondersteld dat sector een landspecifiek effect heeft, dan kan je de sectoren hernoemen zodat bouw-land A verschilt van bouw-land B. Wat je dan niet onderzoekt is de algemene impact van de bouwsector, maar wel de sectorale impact binnen een land versus de internationale verschillen op level 3.
Interessant, hé.
Links
- http://faculty.chass.ncsu.edu/garson/PA765/multilevel.htm - multilevel analyse met SPSS, veel aandacht voor covariantiestructuur
dinsdag 15 juni 2010
Estout
Stata is rampzalig om gebruiksklare output te leveren. Wie toch wil sukkelen, of bij gebrek aan beter, kan de Estout add on installeren:
findit estout
Je moet een stuk naar beneden om de installatiefile met een rare code te vinden.
Maar dan loopt het wel lekker, informatie bij de vleet:
findit estout
Je moet een stuk naar beneden om de installatiefile met een rare code te vinden.
Maar dan loopt het wel lekker, informatie bij de vleet:
- http://repec.org/bocode/e/estout/hlp_eststo.html
- http://repec.org/bocode/e/estout/hlp_estpost.html
- http://www.ats.ucla.edu/stat/stata/faq/estout.htm
esttab
de collectie est-ado's is uitgebreid, maar in de praktijk zijn we eigenlijk niet geïnteresseerd om Stata te gebruiken voor de opmaak van tabellen. Het is immers een ergerlijk programma op dat vlak: nu eens gaat het niet, dan weer wel ... Wat je eigenlijk wil zijn de meest simpele, onopgemaakte tabellen waar men bij de redactie nog alles mee kan aanvangen. Daarom gebruik ik:
esttab, plain wide
dankzij plain zien we geen irritante kadertjes, en dankzij wide staan de t-waarden nààst i.p.v. onder de bèta's. Waar de vrijheidsgraden of p-waarden gebleven zijn, weet ik niet, jammer genoeg. Doorgaans is t ~ z door een hoge n, en heb je die vrijheidsgraden niet nodig om de significantie te benaderen, maar we zitter er natuurlijk altijd liever klop op.
Voorbeeld
eststo clear
sysuse auto
eststo: quietly regress price weight mpg
eststo: quietly regress price weight mpg foreign
esttab, plain wide
... simpel (let op quietly)
Nog een nieuwtje: Stata 11.1 heeft nu ook estimation formatting. Mooi zo!
Links
http://gettinggeneticsdone.blogspot.com/2009/06/make-pretty-regression-tables-in-stata.html
Voorbeeld
eststo clear
sysuse auto
eststo: quietly regress price weight mpg
eststo: quietly regress price weight mpg foreign
esttab, plain wide
... simpel (let op quietly)
Nog een nieuwtje: Stata 11.1 heeft nu ook estimation formatting. Mooi zo!
Links
http://gettinggeneticsdone.blogspot.com/2009/06/make-pretty-regression-tables-in-stata.html
Carolina Population Center
Stata heeft de beste documentatie, maar niettemin moet die de volledigheid laten voorgaan op een user-centered approach. Surf daarom naar:
http://www.cpc.unc.edu/research/tools/data_analysis/statatutorial
... een héél didactische collectie tips voor Stata.
Ik apprecieer:
http://www.cpc.unc.edu/research/tools/data_analysis/statatutorial
... een héél didactische collectie tips voor Stata.
Ik apprecieer:
Stata weights
Opnieuw iets bijgeleerd over Stata waar de gemiddelde SPSS-gebruiker niet van wakker lag: gewichten. Ik had het er al eerder over (hier). Nu blijkt dat je tóch een robuuste schatting van de standaardfouten kunt bekomen.
Even overlopen:
Even overlopen:
- pweight : doorgaans de beste keuze voor samples die herwogen zijn. Een grote waarde betekent ondervertegenwoordiging en dus een onnauwkeurige schatting. De case zal een groter belang krijgen in het berekenen van de gezochte parameters, maar de fout zal vergroten. (vb. project wage gap, decompositie)
- aweight : wanneer waarden voor een case gemiddeldes zijn: een groot gewicht betekent een meer nauwkeurige schatting. De case zal enerzijds een groter belang kijgen, en daarnaast zal de fout kleiner worden. (vb. project loonvorming)
- fweight : te gebruiken wanneer de case in feite meermaals voorkomt, maar de frequencies gecollapsed zijn (vb. datalevering Eurostat voor project Walqing)
- iweight : don't bother
Interessant, is het niet?
Links
Links
- http://www.stata.com/help.cgi?weight
- http://www.cpc.unc.edu/research/tools/data_analysis/statatutorial/sample_surveys/weight_syntax
Threefold decomposition
Ik heb niet erg veel tijd, dus bij wijze van nota:
De decompositiemethode, met als z'n goede en kwade kanten, heeft een aantal nevenvormen. Gewoonlijk, en liefst, gebruik ik de twofold- of omegamethode. Hier bepaal je de referentiegroep voor de coëfficiënten, eventueel via gewichten.
Een andere methode is threefold, waarbij dezelfde groep de geïsoleerde bèta en gemiddelde waarde heeft. Dit heeft het voordeel dat het gemakkelijker te plotten is (zie presentatie). Het nadeel is dat er een restterm is die men CE of CxE noemt, en die interacties aangeeft. Helaas paashaas, die term is nauwelijks op een zinvolle manier te interpreteren.
De decompositiemethode, met als z'n goede en kwade kanten, heeft een aantal nevenvormen. Gewoonlijk, en liefst, gebruik ik de twofold- of omegamethode. Hier bepaal je de referentiegroep voor de coëfficiënten, eventueel via gewichten.
Een andere methode is threefold, waarbij dezelfde groep de geïsoleerde bèta en gemiddelde waarde heeft. Dit heeft het voordeel dat het gemakkelijker te plotten is (zie presentatie). Het nadeel is dat er een restterm is die men CE of CxE noemt, en die interacties aangeeft. Helaas paashaas, die term is nauwelijks op een zinvolle manier te interpreteren.
Decompositie met Stata
Indertijd heb ik een macro geschreven voor SPSS, waarmee de Cotton, Reimers, Neumark & de twee Oaxaca-Blinder decomposities kunnen berekend en gebootstrapt worden. Achteraf bekeken zot werk.
Het probleem met die macro is dat je zijn regels moet volgen, en dat vraagt veel aanpassingen aan de dataset en input voor de macro. In Stata bestaan twee gelijkaardige commando's die deze klus in één lijn klaren. Het enige nadeel is dat ze elk unieke eigenschappen hebben die we helaas niet kunnen samennemen.
De commando's zijn oaxaca en nldecompose. Laat je niet afschrikken door die laatste: nl staat voor niet lineair, maar eigenlijk is het gewoon een uitbreiding van (bijna) alle regressies die Stata heeft, waaronder ook de normale regress.
Wat zijn de voor- en nadelen:
Het probleem met die macro is dat je zijn regels moet volgen, en dat vraagt veel aanpassingen aan de dataset en input voor de macro. In Stata bestaan twee gelijkaardige commando's die deze klus in één lijn klaren. Het enige nadeel is dat ze elk unieke eigenschappen hebben die we helaas niet kunnen samennemen.
De commando's zijn oaxaca en nldecompose. Laat je niet afschrikken door die laatste: nl staat voor niet lineair, maar eigenlijk is het gewoon een uitbreiding van (bijna) alle regressies die Stata heeft, waaronder ook de normale regress.
Wat zijn de voor- en nadelen:
- oaxaca is erg to the point, maar lineair. Het voordeel is dat je het detail van een decompositie kunt opvragen (verklaring per (set van) verklarende variabelen), het nadeel is dat je de Cotton en Reimers specificatie niet kunt aannemen. Er is enkel: threefold, Neumark, Oaxaca 1 & 2.
- nldecompose is zoals gezegd multifunctioneel, maar heeft het nadeel dat je het detail niet kan opvragen.
Voor iemand zoals ik, die dus graag het detail van de Cotton specificatie te zien zou krijgen, is er geen oplossing. Jammer.
Abonneren op:
Posts (Atom)
