2016-09-21 2 views
0

Wenn ich die marginalen Effekte nach dem Logit in Stata verwende, bekomme ich unterschiedliche Ergebnisse, je nachdem, wie ich Faktorvariablen spezifiziere.Randeffekte von Faktorvariablen

Zum Beispiel

sysuse auto 
    gen expensive=0 
    replace expensive=1 if price>=4000 
    qui logit expensive i.foreign 
    margins, dydx(foreign) 

    qui logit expensive foreign 
    margins, dydx(foreign) 

ich, dass einer von ihnen ist die marginale Wirkung in Bezug auf ausländische nehmen und die andere in Bezug auf 1.foreign. Mir ist einfach nicht klar, warum das so ist, mein Prior wäre gewesen, dass dies das Gleiche ist.

Jede Hilfe wäre willkommen. Am wichtigsten ist, welcher ist richtig?

+3

Bei Faktorvariablen erkennt Margin, dass die Variable nicht kontinuierlich ist, also berechnet dydx die diskrete Differenz relativ zum Basiswert, wenn ich das richtig verstehe. Hier ist eine Diskussion über den Margenbefehl, die weiteres Licht werfen könnte. http://www3.nd.edu/~rwilliam/stats/Margins01.pdf Siehe auch die vollständige Dokumentation für die Ränder im _Stata Reference Manual_ PDF –

Antwort

1

Hier ist, was Stata unter den Hauben zu tun (pun intended):

sysuse auto, clear 
gen expensive=0 
replace expensive=1 if price>=4000 
logit expensive i.foreign, coefl 
predict phat, pr 

/* Change in Pr(Expensive) for a tiny change in foreign */ 
margins, dydx(foreign) continuous // this is like your second spec 
gen double me_foreign = phat*(1-phat)*_b[1.foreign] 
sum me_foreign 

/* Discrete change in Pr(Expensive) for when foreign goes from all 1 to all 0 */ 
margins, dydx(foreign) 
replace foreign=1 
predict phat1, pr 
replace foreign=0 
predict phat0, pr 
gen double fd_foreign = phat1 - phat0 
sum fd_foreign 

Wenn Sie den i. Präfix weglassen, Stata der Veränderung der Wahrscheinlichkeit, dass sie teuer berechnet als eine winzige Änderung in der Außen in ist es gab . Sie können dies nachahmen, indem Sie die Option continuous zu margins, dydx() hinzufügen, anstatt ein zweites Modell zu installieren. Stata berechnet für jede Beobachtung die Ableitung der vorhergesagten Wahrscheinlichkeit, teuer zu sein, und nimmt dann den Durchschnittswert. Dies ist nicht ganz sinnvoll, da es keiner sinnvollen Manipulation entspricht. Foreign ist binär, aber die Ableitung gibt Ihnen die Änderung der Wahrscheinlichkeit für eine kleine Änderung im Ausland, als ob es kontinuierlich war. In linearen Modellen spielt dieser Unterschied keine Rolle, in nichtlinearen Modellen jedoch.

Mit dem Präfix i. berechnet Stata die endliche Differenz zwischen der vorhergesagten Wahrscheinlichkeit, als ob jedes Auto fremd war minus der vorhergesagten Wahrscheinlichkeit, als ob jedes Auto im Inland hergestellt wurde, und nimmt dann den Durchschnitt. Dies ist wohl sinnvoller bei einer binären Variablen. Auf der anderen Seite ist der Unterschied hier (und in vielen empirischen Anwendungen) nicht so groß, und man sieht oft, dass Leute das erstere statt das zweite tun.

+0

Großartig. Vielen Dank dafür! – StephenB

Verwandte Themen