version 11.1 // Stata for Windows version 11.1
clear
capture log close
set more off
set memory 500m
set dp comma
/* Im folgenden Kommando "
" durch das lokale Arbeitsverzeichnis und
durch das Erhebungsjahr ersetzen */
* cd
log using heb_mz.log, replace
/* -----------------------------------------------------------------
Stata-Programm zur Ermittlung des Haupteinkommensbeziehers im
Mikrozensus 1996-2004. (Juli 2011)
Quelle:
Schimpl-Neimanns, Bernhard; Siegel, Tony (2011):
Typisierung des Haupteinkommensbeziehers im Mikrozensus 1996-2004.
GESIS-Technical Report Nr. 2011/07. Mannheim: GESIS.
URL: http://www.gesis.org/fileadmin/upload/forschung/
publikationen/gesis_reihen/gesis_methodenberichte/2011/
TechnicalReport_2017_-07.pdf
Download dieser Datei:
http://www.gesis.org/download/fileadmin/missy/klassifikationen/
Haupteinkommensbezieher/heb_mz1996_2004.do
E-Mail: gml[at]gesis.org .
----------------------------------------------------------------- */
/* Scientific Use File Mikrozensus 1996-2004 mit vollstaendigem
Dateinamen inkl. Verzeichnis einlesen und 'JAHR' durch das
Erhebungsjahr im Mikrozensus ersetzen; z.B. "mz1998.dta". */
use ""
/* Die Variable EF5 "Nr. der Person im Haushalt" hat im MZ 1996 den
Namen EF5u1. Falls mit dem MZ 1996 gearbeitet wird: .
use ""
rename EF5u1 EF5 */
/* ----------------------------------------------------------------------------
Programmteil I .
1) Anzahl selbststaendiger Landwirte in Vollzeittaetigkeit
innerhalb eines Privathaushalts (EF372_a).
2) Anzahl der Personen im Alter von 15 oder mehr Jahren
innerhalb eines Privathaushalts, von denen Einkommensangaben
vorliegen (EF372_b).
3) Maximale Einkommensklasse innerhalb eines Privathaushalts von
Personen im Alter von 15 Jahren oder aelter mit Angaben zum
Einkommen (EF372_m).
-----------------------------------------------------------------------------*/
/* Sortierung zur Abgrenzung von Haushalten nach Bundesland (EF1),
Auswahlbezirksnummer (EF3) und Nummer des Haushalts im Auswahlbezirk (EF4) */
sort EF1 EF3 EF4
gen EF372a = 1 if (EF507 == 1 & EF372 == 50 & EF504 == 1 & ///
(EF127 == 01 | EF127 == 02) & EF129 >= 011 & ///
EF129 <= 050 & EF141 > 39)
replace EF372a = 0 if EF372a ==.
egen EF372_a = total(EF372a == 1), by (EF1 EF3 EF4)
/* Gültige Einkommensangaben bis MZ 2000: DM, ab MZ 2001: EURO
Änderungen der Klassenobergrenzen bis MZ 1999: [18] 7500 und mehr DM
Ab MZ 2000: [24] 35000 oder mehr DM bzw. MZ 2004: [24] 18000 Euro und mehr
Kategorienänderungen bleiben im Folgenden unberücksichtigt. */
gen EF372b = 1 if (EF372 >= 01 & EF372 <= 24 & EF30 >= 15)
replace EF372b = 0 if EF372b == .
egen EF372_b = total(EF372b == 1), by (EF1 EF3 EF4)
gen EF372m = EF372 if (EF30 >= 15 & EF372 >= 01 & EF372 <= 24)
replace EF372m = 0 if EF372m ==.
egen EF372_m = max(EF372m), by (EF1 EF3 EF4)
/* ----------------------------------------------------------------------------
Programmteil II .
4) Anzahl der Personen im Privathaushalt, deren Einkommensklasse
der maximalen Einkommensklasse im Privathaushalt entspricht
(nEF372_m).
5) Niedrigste Personennummer innerhalb des Privathaushalts der
Person, deren Einkommensklasse der maximalen Einkommensklasse
im Privathaushalt entspricht (EF5_m).
Hinweis: Die Variable EF5 "Nr. der Person im Haushalt" hat
auschliesslich im Erhebungsjahr 1996 den Namen EF5u1.
-----------------------------------------------------------------------------*/
gen nEF372 = 1 if (EF372m == EF372_m)
replace nEF372 = 0 if nEF372 ==.
egen nEF372_m = total(nEF372 == 1), by (EF1 EF3 EF4)
* MZ 1997-2004: EF5, MZ 1996: EF5u1
gen EF5m = EF5 if (EF372m == EF372_m)
replace EF5m = 99 if EF5m ==.
egen EF5_m = min(EF5m), by (EF1 EF3 EF4)
/* ----------------------------------------------------------------------------
Programmteil III.
6) Zuweisung der Werte zur Typisierung Haupteinkommensbezieher
im Haushalt (HEB).
-----------------------------------------------------------------------------*/
gen heb = 0
replace heb = 1 if (EF506 ==1 & EF372_a > 0 & EF507 == 1)
replace heb = 5 if (EF506 == 1 & EF372_a > 0 & EF507 > 1)
replace heb = 2 if (EF506 == 1 & EF372_a == 0 & EF372_b >= 1 ///
& nEF372_m == 1 & EF372m == EF372_m)
replace heb = 3 if (EF506 == 1 & EF372_a == 0 & EF372_b >= 1 ///
& nEF372_m > 1 & EF372m == EF372_m & EF5 == EF5_m)
replace heb = 6 if (EF506 == 1 & EF372_a == 0 & EF372_b >= 1 ///
& nEF372_m > 1 & EF372m == EF372_m & EF5 > EF5_m)
replace heb = 7 if (EF506 == 1 & EF372_a == 0 & EF372_b >= 1 ///
& EF372m < EF372_m & EF30 >= 15 & EF372 <= 24)
replace heb = 4 if (EF506 == 1 & EF372_a == 0 & EF372_b == 0 & EF507 == 1)
replace heb = 9 if (EF506 == 1 & EF372_a == 0 & EF372_b == 0 & EF507 > 1)
replace heb = 8 if (EF506 == 1 & EF372_a == 0 & EF372_b >= 1 ///
& (EF372 > 24 | EF30 < 15))
label variable heb "Haupteinkommensbezieher im Haushalt"
label define heb ///
1 "Person ist Haushaltsbezugsperson und im Haushalt gibt es mindestens eine(n) selbststaendige(n) Landwirt(in) in Vollzeit" ///
2 "Person hat alleine die hoechste Einkommensklasse im Haushalt" ///
3 "Person hat mit mindestens einer weiteren Person im Haushalt die hoechste Einkommensklasse und von allen Personen mit der hoechsten Einkommensklasse die niedrigste Personennummer im Haushalt" ///
4 "Person ist Haushaltsbezugsperson und im Haushalt gibt es keine Person mit Einkommensangaben bzw. keine(n) selbststaendigen Landwirt(in) in Vollzeit" ///
5 "Person ist nicht Haushaltsbezugsperson und im Haushalt gibt es mindestens eine(n) selbststaendige(n) Landwirt(in) in Vollzeit" ///
6 "Person hat mit mindestens einer weiteren Person im Haushalt die hoechste Einkommensklasse und von allen Personen mit der hoechsten Einkommensklasse nicht die niedrigste Personennummer im Haushalt" ///
7 "Person hat Einkommensangaben, aber nicht die hoechste Einkommensklasse, und ist 15 Jahre oder aelter" ///
8 "Person hat keine Einkommensangaben, aber andere Haushaltsmitglieder, oder Person ist juenger als 15 Jahre" ///
9 "Person ohne Einkommensangabe, alle anderen Haushaltsmitglieder ebenfalls ohne Angabe des Individualeinkommens und Person nicht Bezugsperson des Haushalts" ///
0 "Trifft nicht zu (Gemeinschaftsunterkunft)"
label values heb heb
tab heb, miss
exit
* PROGRAMMENDE