Variable mit dem kleinsten, zweitkleinsten, ... Wert wählen

Fragen zu Stata Syntax und Do-Files.

Re: Variable mit dem kleinsten, zweitkleinsten, ... Wert wäh

Beitragvon Leviathan » Sa 7. Jun 2014, 06:03

Richtig, ich müsste dann ja im Prinzip alle Variablen ins Long Format bringen, die "betroffen" sind. Kann ich denn damit später überhaupt noch Regressionsanalysen berechnen?


Und noch einmal hierzu:

Code: Alles auswählen
bys hhid (f10400) : g kid_nr = ((_N + 1) - _n)

Was heißt das jetzt genau?

Geburtsjahr geteilt durch Kindergesamtzahl (was ist der Unterschied zwischen N und n)?


Bezogen auf die Logik kann ich das wenig nachvollziehen. Sind denn diese Berechnungen mit SPSS so viel komplizierter? Dieses Long Format leuchtet mir zwar jetzt ein, aber warum gibt es da nicht einfach einen Befehl, der für die Person / den Fall im Datensatz die Geburtsdaten der Haushaltsmitglieder (Kinder) vergleicht und dann das jeweils jüngste, zweitjüngste usw. Kind auswählt? SPSS hat da ja immer das "IF". Oder soll der letzte Befehl genau das ausdrücken?
Leviathan
 
Beiträge: 6
Registriert: Mo 14. Apr 2014, 02:42
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Variable mit dem kleinsten, zweitkleinsten, ... Wert wäh

Beitragvon daniel » Sa 7. Jun 2014, 10:54

Kann ich denn damit später überhaupt noch Regressionsanalysen berechnen?


Ich mag bezweifeln, dass Du die geplanten Analysen im wide format schätzen kannst, habe das aber nicht mehr 100 prozentig im Blick. Über Deine Forschungsfrage(n) etc. haben wir soweit ich erinnere bisher nichts gelesen. Allgemein benötigt eine Regressionsanalyse eine Matrix, in der die Zeilen Beobachtungseinheiten, die Spalten die Variablenwerte enthalten.

Sind denn diese Berechnungen mit SPSS so viel komplizierter?


Was hat nun SPSS mit der Sache zu tun?

warum gibt es da nicht einfach einen Befehl, der für die Person / den Fall im Datensatz die Geburtsdaten der Haushaltsmitglieder (Kinder) vergleicht und dann das jeweils jüngste, zweitjüngste usw. Kind auswählt?


Warum es welche Befehl gibt, kann wohl nur jemand bei Stata Corp beantworten. Was ich (und Du?) nicht verstehe, ist was genau Du unter "auswählen" verstehst? Was bedeuetet es, das jüngste Kind "auszuwählen"? Soll dann nur diese Variable (Spalte) behalten werden? Denn Haushalte (Zeilen) kannst Du ja nun schlecht eingrenzen, da dort jeweils alle Kinder enthalten sind. Es ist mir daher schleirhaft, was genau Du Dir für eine Datenstruktur vorstellst.

Code: Alles auswählen
bys hhid (f10400) : g kid_nr = ((_N + 1) - _n)


Basiscs first. Ein Dopelpunkt (:) steht in keiner mir bekannten Software für Division. Eine Divison wird durch den slash (/) ausgedrückt.

Der erste Teil vor dem Doppelpunkt bedeutet, dass Stata den Datensatz nach Haushaltsid und innerhalb der Haushaltid nach Geburtsjahr. Sortiert wird in aufsteigender Reihenfolge, also das älteste (weil kleinste Geburtsjahr) Kind zuerst.

Der Teil nach dem Doppelpunkt sagt Stata, es soll eine neue Variable (kid_nr) erstellt werden (generate). Die interne Variable _n zählt die Beobachtungen (Zeilen) von 1 bis (interne Variable) _N durch. Da wir das -by- prefix voranstellen, enthält _N für jeden Haushalt die gesamtzahl der Kinder, während _n das erste, zweite, ..., _Nte Kind bezeichnet. Da Du Dir eine umgekehrte Reihenfolge wünschst, die Konstruktion (_N + 1) - _n. Am Beispiel einer Familie mit drei Kindern, nimmt dieser Ausdruck für _n == 1 (also das älteste Kind) den Wert 3 + 1 - 1 = 3 an.

"Ausgewählt" wird hier noch gar nichts - nur "markiert". Willst Du nun bsp. eine Regression nur für das jeweils jüngste Kind schätzen, könntest Du dies mittels

Code: Alles auswählen
reg <depvar> <indepvars> if (kid_nr == 1)


erreichen.

Hoffe das Vorgehen ist nun klarer.
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

Vorherige

Zurück zu Stata Syntax

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste