dekompositionsmodell ldecomp befehl

Faktorenanalyse, Clusteranalyse, Diskriminanzanalyse und weitere multivariate Verfahren mit Stata.

dekompositionsmodell ldecomp befehl

Beitragvon Cipolina » Fr 9. Aug 2013, 13:14

Hallo,
ich möchte ein dekompositionsmodell machen mit dem befehl ldecomp.
Meine Variablen sind Gymnasium, soz_Klasse, rekodiert_Notendurchschnitt und Migrationshintergrund.
Ich bin bisher soweit schon gekommen:
ldecomp Gymnasium, direct(soz_Klasse) indirect(rekodiert_Notendurchschnitt) or

ich will das Modell allerdings noch mit der Bedingung Migrationshintergrund = 1 und einmal =0 machen.
Hab nun schon verschiedene Arten ausprobiert und auch schon unter help nachgeguckt.. aber das hat bisher nicht funktioniert. In der Syntax steht da nur:
ldecomp depvar [ control_var1 [...]] } [if] [in] [weight] ,
direct(varname) indirect(varlist) [ at(control_var1 # [;
control_var2 #] [...]) obspr predpr predodds or rindirect
normal range(# #) nip(#) interactions nolegend nodecomp
nobootstrap bootstrap_options ]

Ich habs zum Beispiel schon ganz simple probiert mit: ldecomp Gymnasium if Migrationshintergrund==1, direct(soz_Klasse) indirect(rekodiert_Notendurchschnitt) or
allerdings ist mir dann angezeigt worden: variable __000001 not found
Cipolina
 
Beiträge: 11
Registriert: Mi 20. Mär 2013, 18:50
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: dekompositionsmodell ldecomp befehl

Beitragvon daniel » Fr 9. Aug 2013, 14:40

allerdings ist mir dann angezeigt worden: variable __000001 not found


Klingt nach einem bug in -ldecomp- (SJ). Bitte gib an, wo Du Programme, die nicht Teil des ofiziellen Stata release sind gefunden hast. Du könntest den Autoren (Maarten Buis) direkt anschreiben. Am besten mit repliziebarem Beispiel.

Ich halte mich bei der Dekomposition von direkten und Indirekten Effekten an die KHB Methode (Karlson et al. 2011, Breen et al. 2010) zu der es ebenfalls ein ado-file (-khb-) vom SSC server gibt.


Breen, R./Karlson, K.B./Holm, A. (Forthcoming). Total, direct, and indirect effects in logit models. Accepted for publication in: Sociological Methods and Research.
(http://www.researchgate.net/publication ... git_Models)

Karlson, K.B./Holm, A. (2011): Decomposing primary and secondary effects: A new decomposition method. Research in Stratification and Social Mobility 29:221-237.
Stata is an invented word, not an acronym, and should not appear with all letters capitalized: please write “Stata”, not “STATA”.
daniel
 
Beiträge: 1060
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: dekompositionsmodell ldecomp befehl

Beitragvon Cipolina » Fr 9. Aug 2013, 16:01

Ich hab das von der Seite hier (http://maartenbuis.nl/software/ldecomp.html). Also hab einfach ssc install ldecomp eingegeben.
Wenn ich das ganze ohne if Migrationshintergrund==1 eingebe, funktioniert das normal. Muss ichd a vielleicht irgendwelche Klammern verwenden oder so? Aber so wie es in der Syntax steht müsste ich es ja richtig gemacht haben, eigentlich

Die KHB Methode sollten wir nicht benutzen. Ich orientier mich dabei grade an dem Text von Maarten Buis aus dem Stata Journal: Direct and indirect effecta in a logit model
(http://www.stata-journal.com/sjpdf.html?articlenum=st0182)
Cipolina
 
Beiträge: 11
Registriert: Mi 20. Mär 2013, 18:50
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: dekompositionsmodell ldecomp befehl

Beitragvon daniel » Fr 9. Aug 2013, 16:16

Wenn ich das ganze ohne if Migrationshintergrund==1 eingebe, funktioniert das normal. Muss ichd a vielleicht irgendwelche Klammern verwenden oder so?

Wie gesagt, hast Du m.E. keinen Eingabefehler gemacht. __000001 ist eine temporäre Variable, die innerhlab des Programms -ldecomp- erzeugt wird. Die Fehlermeldung ist vermutlich ein bug (i.e. ein Fehler im Programm-code von Maarten Buis), den ich auf Anhieb nicht finden kann.

Ich bin mir nicht sicher, ob Du nicht vielleicht eher sowas willst, bzw. ob das ein work-around für Dein Problem wäre

Code: Alles auswählen
ldecomp Gymnasium  Migrationshintergrund ,direct(soz_Klasse) indirect(rekodiert_Notendurchschnitt) at(Migrationshintergrung 1) or
ldecomp Gymnasium  Migrationshintergrund ,direct(soz_Klasse) indirect(rekodiert_Notendurchschnitt) at(Migrationshintergrung 0) or


Ansonsten kannst Du wie gesagt Maarten Buis anschreiben, oder etwas in der Richtung machen

Code: Alles auswählen
preserve
keep if Migrationshintergrund == 1
ldecomp  Gymnasium ,direct(soz_Klasse) indirect(rekodiert_Notendurchschnitt)  or
restore
preserve
keep if Migrationshintergrund == 0
ldecomp  Gymnasium ,direct(soz_Klasse) indirect(rekodiert_Notendurchschnitt)  or
restore
Stata is an invented word, not an acronym, and should not appear with all letters capitalized: please write “Stata”, not “STATA”.
daniel
 
Beiträge: 1060
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: dekompositionsmodell ldecomp befehl

Beitragvon Cipolina » Fr 9. Aug 2013, 16:20

Hmm.. ne das funktioniert leider auch nicht.
each element in the at() option must contain of two elements
the first element is one of the control variables and the second element its value
an error occurred when bootstrap executed _ldecomp



EDIT: Das zweite hat funktioniert. Super, danke!
Cipolina
 
Beiträge: 11
Registriert: Mi 20. Mär 2013, 18:50
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: dekompositionsmodell ldecomp befehl

Beitragvon daniel » Fr 9. Aug 2013, 16:46

Mag ein Tippfehler sein. Beachte, dass ich "Migrationshintergung" statt "Migrationshintergund" geschrieben habe. Naja, solange der work-around hilft, nicht weiter tragisch.
Stata is an invented word, not an acronym, and should not appear with all letters capitalized: please write “Stata”, not “STATA”.
daniel
 
Beiträge: 1060
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post


Zurück zu Multivariate Verfahren

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron