******************************************************************************************. * GESIS - Leibniz-Institut für Sozialwissenschaften * German Microdata Lab (GML), Mannheim * Postfach 12 21 55 * 68072 Mannheim * Tel.: 0621/1246-265 Fax: 0621/1246-100 * E-Mail: gml@gesis.org *******************************************************************************************. **************************************************************************************************************************************. * Programmname: CS_A.SPS . * Autor: Bernhard Schimpl-Neimanns (bernhard.schimpl-neimanns@gesis.org). * Zweck: Berechnung des Stichprobenfehlers im Mikrozensus mit . * SPSS Complex Samples: Gesamtwerte (Totals) bei gebundener . * Hochrechnung . * Beschreibung: http://www.gesis.org/fileadmin/upload/dienstleistung/tools_standards/mikrodaten_tools/Varianz/SP-Fehler/varmz_cs.pdf. . * Status: getestet mit SPSS V12 und V13; . * Datenbasis: Mikrozensus 2000 (Scientific Use File); Mai 2005 . **************************************************************************************************************************************. title 'MZ-Stichprobenfehler mit SPSS Complex Samples: Totals geb. Hochrechn.'. get file 'mz2000.sav' /keep ef1 ef3 ef4 ef30 ef32 ef52 ef127 ef504 ef505 ef712 ef750. weight off. missing values all(). * VARIABLENAUSWAHL. * EF1 Land der Bundesrepublik. * EF3 Auswahlbezirksnummer (Systemfrei). * EF4 Haushaltsnummer (systemfreie Nr. des Haushalts im Auswahlbezirk). * EF30 Alter . * EF32 Geschlecht. * EF52 Typisierung Staatsangehörigkeit. * EF127 Stellung im Beruf (gegenwärtige Tätigkeit). * EF504 Erwerbstyp. * EF505 Bevölkerung am Hauptwohnsitz. * EF712 Gebäudegrößenklasse (Gebäudeschicht). * EF750 Personen-Hochrechnungsfaktor in der regionalen Anpassungsschicht. subtitle '1. Schritt: Variablenkonstruktion'. * SUBPOPULATION z: Erwerbspersonen, Bevölkerung am Hauptwohnsitz, 15- bis 74-Jährige. compute z=0. if (ef504>=1 & ef504<=2 & /* Erwerbspersonen (ILO-Def.) ef505>=1 & ef505<=2 & /* Bevölkerung am Hauptwohnsitz ef30>=15 & ef30<=74) z=1. /* 15-74-Jährige variable label z "Subpopulation". value labels z 1 'ILO-Erwerbspersonen' 0 'Sonst'. formats z (f1). * Y-Variable y: ILO-Erwerbslose . recode ef504 (2=1) (else=0) into y. variable label y "Y-Variable". value labels y 1 'ILO-Erwerbslose' 0 'Sonst'. formats y (f1). * SUBPOPULATION X: Bundesgebiet (West/Ost). recode ef1 (1 thru 10=1) (11 thru 16=2) into X. variable label X 'Bundesgebiet'. value labels X 1 'Westliches Bundesgebiet' 2 'Östliches Bundesgebiet (einsch. Berlin)'. formats X (f1). * DESIGNGEWICHT w. compute w=100/.70. variable label w 'Designgewicht'. * Kopie der in VarMZ_A.SPS benötigten Variablen: . compute y=y*z. /* Y-Variable mit Definition der Subpopulation z compute psu=ef3. /* Auswahlbezirk compute hhnr=ef4. /* Haushaltsnummer compute soll_ist=ef750. /* Personen-Hochrechnungsfaktor * ------ab hier: Zeilen 83-147 aus SPSS-Programm VarMZ_A.SPS ------- Quelle: . * www.gesis.org/Dauerbeobachtung/GML/Service/Mikrodaten-Tools/varianz/varmz_a.sps. * Kommentare zu Modifikationen in eckigen Klammern [ ] . * y_w: mit Randanpassung gewichtete Beobachtung [Zeile 83 VarMZ_A.SPS] . compute y_w=y*soll_ist. variable label y_w 'an Bev.fortschr. angepasstes Total Y'. * Protokollierung bis Ausgabe der Kennwerte abschalten. * set printback none. * Anpassungsklassen konstruieren. compute anp=0. if (ef52=1 & ef32=1 & ef127<>9 & ef127<>10) anp=1. if (ef52=1 & ef32=2) anp=2. if (ef52<>1 & ef32=1) anp=3. if (ef52<>1 & ef32=2) anp=4. if (ef52=1 & ef32=1 & ef127=9) anp=5. if (ef52=1 & ef32=1 & ef127=10) anp=6. variable label anp 'Anpassungsklasse'. value label anp 1 'Deutsche Maenner' 2 'Deutsche Frauen' 3 'Auslaendische Maenner' 4 'Auslaendische Frauen' 5 'Zeit-/Berufssoldaten, BGS, Ber.pol.' 6 'Grundwehrdienstleistende'. formats anp (f1). * Gruppenvariable konstruieren. compute gruppe=ef1*10+anp. variable label gruppe 'Bundesland (EF1) * Anpassungsklasse'. formats gruppe (f4). * Schichtvariable bilden: Bundesland (ef1) * . * Gemeindegroessenklasse (ef708) * Gebaeudeschicht (ef712). * compute schicht = ef1*100 + ef708*10 + ef712. [Zeile 111 ersetzen durch:...]. compute schicht=ef1*10+ef712. /* [in diesem Beispiel ohne Gemeindegrößenklasse] formats schicht (f4). * Sortieren nach Gruppen . sort cases by gruppe. * Personenfile (zwischen-) speichern . save outfile 'mz_pers.sav' /* [Zeile 120 ergänzt: w x z ef1 ef3 ef4] /keep schicht psu hhnr gruppe y y_w soll_ist w x z ef1 ef3 ef4 /compressed . * Berechnen des Regressionskoeffizienten B_dach=t_y_g / t_x_g . aggregate outfile=* /presorted /break gruppe /t_y_g = sum(y) /t_y_w = sum(y_w) /t_s_i = sum(soll_ist) /t_x_g = n /t_x_w = n. compute B_dach=t_y_g/t_x_g. compute t_y_w =t_y_w*100/0.7. compute t_ist =t_x_w*100/0.7. compute t_soll=t_ist *t_s_i/t_x_g. * File mit Regressionskoeffizienten etc. (zwischen-) speichern. save outfile 'reg_koef.sav'. * Berechnung des gewichteten Gesamt-Totals ueber die Gruppen . match files file 'mz_pers.sav' /table 'reg_koef.sav' /by gruppe. * Berechnen der Hilfsgroesse u=g*(y - B_dach*1) mit g=Soll_Ist . compute u=Soll_Ist * (y-B_dach). /* [Zeile 147: Konstruktion Hilfsvariable u] * ---------------- Ende Auszug aus SPSS-Programm VarMZ_A.SPS ----------------. subtitle '2. Schritt: Definition des Stichprobenplans'. * ANNAHMEN (Näherungen) . * Zweistufige geschichtete Zufallsstichprobe. * Schichtung: Bundesland (EF1) & Gebäudeschicht (EF712) -> SCHICHT. * 1. Stufe: Primäreinheiten (PSU): Auswahlbezirke (EF3). * 2. Stufe: Sekundäreinheiten: Haushalte (EF4). * Uneingeschränkte Zufallsstichprobe für jede Auswahlstufe. CSPLAN ANALYSIS /PLAN FILE='STSI_SI.csaplan' /PLANVARS ANALYSISWEIGHT=w /PRINT PLAN /DESIGN STAGELABEL= 'PSU' STRATA= schicht CLUSTER= ef3 /ESTIMATOR TYPE=EQUAL_WOR /INCLPROB VALUE=0.01 /DESIGN STAGELABEL= 'HAUSHALT' CLUSTER= ef4 /ESTIMATOR TYPE=EQUAL_WOR /INCLPROB VALUE=0.70. subtitle 'Schritt 3.1: Schätzung des Totals bei gebundener Hochrechung (y_w)'. temporary. * Subpopulation z: Erwerbspersonen . select if (z=1). * gebundene Hochrechung (soll_ist=ef750) und Designgewichtung (w). compute g=soll_ist*w. weight by g. crosstabs /y by X. * Alternativ mit CSDESCRIPTIVES . * Beachte: Varianzschätzung ist irrelevant . * CSDESCRIPTIVES /PLAN FILE = 'STSI_SI.csaplan' /SUMMARY VARIABLES =y_w /SUBPOP TABLE = X DISPLAY=LAYERED /SUM /MISSING SCOPE = ANALYSIS CLASSMISSING = EXCLUDE. subtitle 'Schritt 3.2: Schätzung des Standardfehlers zum Total (y_w)'. * Beachte: Schätzung des Totals der Hilfsvariablen u ist irrelevant . * Variationskoeffizient und Konfidenzintervall sind getrennt zu berechnen. CSDESCRIPTIVES /PLAN FILE = 'STSI_SI.csaplan' /SUMMARY VARIABLES =u /SUBPOP TABLE = X DISPLAY=LAYERED /SUM /STATISTICS SE /MISSING SCOPE = ANALYSIS CLASSMISSING = EXCLUDE. FINISH.