Aggregieren von Microm-Daten

Liebes NEPS-Forum,

ich arbeite unter anderem mit den Microm-Daten. Hier interessieren mich vor allem die Variablen mgm_k_dom (dominantes Milieu), mgs_k_dom (dominantes Submilieu), alq_p_quote und alq_k_quote (Arbeitslosenquoten).

Mein Problem ist nun, dass es ebendiese Variablen nur auf PLZ-8-Ebene gibt, nicht aber auf PLZ-, oder Gemeindeebene. Ich brauche eine repräsentative Stichprobe pro ID_regio (mit anderen Worten: es sollten mindestens 5-10 Personen in der gleichen Einheit wohnen). Leider gibt es auf PLZ-8-Ebene oft aber nur eine oder zwei Personen pro ID_regio.

Ich habe mir deswegen überlegt, die PLZ-8-Infos auf PLZ- oder Gemeinde-Ebene zu aggregieren (sodass alle PLZ-8_IDs ihrer PLZ zugeordnet werden) und von diesen Aggregaten dann einen ungewichteten Durchschnitt zu berechnen. Das dominante Milieu, das am häufigsten PLZ-8 Ebene vorkommt, soll dann das dominante Milieu auf PLZ- oder Gemeinde- Ebene sein.

Wenn man sich die ID_regios auf PLZ-8 und PLZ-Ebene (oder Gemeinde) anschaut, kann man auch ungefähr erkennen, welche PLZ-8-Nummern in einer PLZ (oder einer Gemeinde) enthalten sind. Nur bin ich mir unschlüssig, wie ich vorgehen muss.

Ich hoffe, ich habe mich einigermaßen verständlich ausgedrückt. Herzlichen Dank schon einmal für Eure Vorschläge.

VG,

Leonie

Liebe Leonie,

dir muss dabei klar sein, dass die PLZ-Ebene nicht deckungsgleich mit der Gemeindeebene ist, d.h., es gibt Gemeinden, die mehrere Postleitzahlen haben, und umgekehrt erstrecken sich Postleitzahlgebiete manchmal über mehrere Gemeinden. Mit einer 1:1 Aggregation kommst du hier nicht hin.

Da es sich ja aber um Kontextinformation handelt, ist es natürlich möglich, aus den vorliegenden Werten auf PLZ(8)-Ebene einen aggregierten Wert für alle Personen aus einer Gemeinde zu bilden. Ob das Sinn macht, musst du letztlich inhaltlich entscheiden und begründen. Eine Möglichkeit, dass zu tun, wäre z.B. (mit einigen Implikationen):

use ID_t wave regio ID_regio mgm_k_dom using "SC6_pTargetMicrom_O_10-0-1", clear

* Nur Welle 6 behalten und nur die PLZ-8 und Gemeindeebene
keep if wave==6  & regio>=4

* Die Werte aus der PLZ-8-Ebene in die Gemeindeebene kopieren
bysort ID_t (regio): replace mgm_k_dom=mgm_k_dom[_n-1] if missing(mgm_k_dom)

* nur noch Gemeindeebene behalten
keep if regio==5

* Daten innerhalb einer Gemeinde-ID aggregieren
bysort ID_regio: egen mgm_k_dom_median=median(mgm_k_dom)

Falls du mehrere Wellen betrachten willst, wird die Syntax natürlich komplexer. Auch handelt es sich bei mgm_k_dom eigentlich um eine nominalskalierte Variable, wie du diese aggregieren möchtest, müsstest du inhaltlich begründen (der Median oben ist nur ein Beispiel).

Gutes Gelingen weiterhin,
Tobias