Datenmanagement

Allgemeine Fragen rund um Statistik mit Stata.

Datenmanagement

Beitragvon Mimimiriam » Fr 19. Jun 2020, 22:00

Hallo liebe Aktiven im Stata-Forum,

da das mein erster Beitrag ist, hoffe ich, dass ich alles "richtig" mache. Als ersten Hinweis: ich nutze Stata 16.

Ich habe einen Datensatz im Long-Format und möchte eine Variable aus Informationen verschiedener Zeilen bilden. Hier eine grobe Visualisierung:

| Haushalt | ID | fam | famtyp |
| 1 | 1 | Vater | typ1 |
| 1 | 2 | Mutt. | typ1 |
| 1 | 3 | Kind | typ1 |
| 2 | 1 | Vater | typ1 |
| 2 | 2 | Brud. | typ2 |
| 2 | 3 | Kind | typ2 |
| 3 | 1 | Vater | typ3 |
| 3 | 1 | Mutt. | typ3 |
| 3 | 1 | Schw. | typ3 |
| 3 | 1 | Kind | typ3 |
| 4 | 1 | Vater | typ1 |
| 4 | 1 | Kind | typ5 |

Der Datensatz besteht also aus verschiedenen Familienmitgliedern, die jeweils in einer Zeile repräsentiert sind.
Ich möchte eine Variable "famtyp" (letzte Spalte) erstellen, die verschiedene Familientypen unterscheidet. Z.B. soll ein Haushalt, in dem auch die Schwester wohnt, einem anderen Typ zugeordnet werden, als die "klassische" Familie mit zwei Elternteilen.
Mir ist nicht klar, wie ich diese Variableninformation auf alle Zeilen zuordne.
Wie kann mir das gelingen?

Vielen Dank!

Ich freue mich sehr über Tipps!
Mimimiriam
 
Beiträge: 5
Registriert: Fr 19. Jun 2020, 21:49
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Datenmanagement

Beitragvon Staxa » Sa 20. Jun 2020, 14:20

Ganz verstehe ich dein Beispiel nicht, da in Familie 2 offenbar 2 verschiedene Typen gleichzeitig sind, aber so wie ich das sehe sollen ja diese Typenklassifizierungen innerhalb einer Familie konstant sein, Wie dem auch sei, du wirst hier etwa egen benutzen müssen (help egen). Ein Beispiel: Angenommen, "Schwester" wird mit 5 kodiert, dann kannst du es wie folgt machen

Code: Alles auswählen
gen schwestervorhanden = 1 if  fam == 5
replace schwestervorhanden = 0 if missing(schwestervorhanden)
bysort Haushalt: egen schwesterinfamilie = max(schwestervorhanden)
replace typ = 99 if schwesterinfamilie == 1


Zur Kontrolle dann etwa:
Code: Alles auswählen
sort familienid
list familienid typ VAR VAR VAR in 1/50, sepby(familienid)


Mit typ wird dann also die Zuordnung angegeben. Auf diese Weise würde ich zuerst prüfen, ob gewisse Personen oder Konstellationen erfüllt sind, dann daraus eine Indikatorvariable bauen und das dann mit bysort und egen auf die ganze Familie hochrechnen. Am Anfang etwas kompliziert, aber mit etwas Übung und Erfahrung ist es nicht schwierig.
Stata für Anfänger: www.statabook.com
Staxa
 
Beiträge: 680
Registriert: Di 27. Feb 2018, 12:56
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Datenmanagement

Beitragvon Mimimiriam » Di 7. Jul 2020, 09:29

Danke für die Antwort!
Mimimiriam
 
Beiträge: 5
Registriert: Fr 19. Jun 2020, 21:49
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post


Zurück zu Statistik allgemein

Wer ist online?

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

cron