PDO_HDO_Erzeugen.sps:
**
* Einlesen der Standardstatistikdatei nach einer HHGEN-Haushaltegenerierung
* und nach einer HHPROG-Indikatorenberechnung dstbestc.txt (Pfad anpassen!)
* Mit dieser SPSS-Syntax erhält man die Ableitung von PDO_Test und HDO_Test
* gemäß der Spezifikation für PDO und HDO
* Durch einen Vergleich mit den Ergebnissen aus HHPROG kann man vermutete
* Inkonstistenzen bei HDO und PDO analysieren
* Wenn die ausgegebenen Kreuztabellen konstistent sind,
* d.h. Werte <>0 nur in der Diagonalen enthalten, liegt kein Fehler in HHPROG
* vor, sondern in HHGEN oder bereits direkt in der Bestandsdatei
*.
data list file = "../../sikurs/beispiel/hhprog/dstbest.txt"
/ R01 1- 8 (A)
R03 9- 19 (A)
P03 123-123 (F)
KERNS 179-179 (F)
HHNR 183-186 (F)
HZUO 187-188 (A)
HPAAR 189-189 (F)
HELT 190-190 (F)
HVOR 191-191 (F)
HNACH 192-192 (F)
A01 251-253 (F)
A06 260-261 (F)
A07 262-263 (F)
PDO 268-268 (A)
HDO 269-269 (A).
execute.
* Auswahl Personen in Haushalten nach HHGEN.
select if (KERNS <> 0).
* Initialisierung.
compute PDO_Test=9.
*****************************************************************..
* Zuordnung nach PDO_Test gemäß Spezifikation.
*****************************************************************..
if ((A01<18) and (P03=1)) and (KERNS<>2) and (HNACH<>2) and (HNACH<>6) PDO_Test=1.
if (A07>0) and ((HELT=1) or ((HVOR=1) and (HZUO<>"4 "))) PDO_Test=2.
if (HPAAR=1 or HPAAR=2) and (PDO_Test<>2) PDO_Test=3.
if (HNACH=1 or HNACH=3 or HNACH=4 or HNACH=5) and (PDO_Test<>1 and PDO_Test<>2 and PDO_Test<>3) PDO_Test=4.
if (HELT=1 or HVOR=1) and ( PDO_Test<>1 and PDO_Test<>2 and PDO_Test<>3 and PDO_Test<>4) PDO_Test=5.
If (A06=1) PDO_Test=6.
if (PDO_Test<>1 and PDO_Test<>2 and PDO_Test<>3 and PDO_Test<>4 and PDO_Test<>5 and PDO_Test<>6) PDO_Test=7.
execute.
* Plausi: In der Kreuztabelle müssen alle Werte in der Diagonalen stehen.
crosstabs
/tables = PDO_Test by PDO
/format=avalue tables nopivot
/cells=count.
*****************************************************************..
* Zuordnung von HDO_Test gemäß Spezifikation.
*******************************************************************.
* Initialisierung.
compute HDO_Test=9.
* Zwischenschritt:
* Merkmale für Haushalte berechnen, temporär zwischenspeichern und matchen.
if (PDO_Test=1) HK=1.
if (HPAAR=1 or HPAAR=2 and PDO_Test=3) HP=1.
if (PDO_Test=4) HN=1.
if (PDO_Test=5) HV=1.
recode HK HP HN HV (missing=0).
sort cases by R01 R03 HHNR.
dataset declare aggset.
aggregate outfile = aggset
/break=R01 R03 HHNR
/HKs = sum (HK)
/HPs = sum (HP)
/HNs = sum (HN)
/HVs = sum (HV).
match files file = *
/table=aggset
/by=R01 R03 HHNR.
* Ende Zwischenschritt.
if (A06=1) HDO_Test=1.
if (HKs>0 and HDO_Test<>1) HDO_Test=2.
if (HKs=0 and HPs=2 and HDO_Test<>1 and HDO_Test<>2) HDO_Test=3.
if (HKs=0 and HPs=0 and HNs>0 and HVs>0 and HDO_Test<>1 and HDO_Test<>2 and HDO_Test<>3) HDO_Test=4.
if (HKs=0 and HPs=0 and HVs=0 and HDO_Test<>1 and HDO_Test<>2 and HDO_Test<>3 and HDO_Test<>4) HDO_Test=5.
recode HDO_Test (missing=0).
* Plausi: In der Kreuztabelle müssen alle Werte in der Diagonalen stehen.
crosstabs
/tables = HDO_Test by HDO
/format=avalue tables nopivot
/cells=count.
Ausgabe:
1 Eintrag wird von `../../sikurs/beispiel/hhprog/dstbest.txt' gelesen.
Variable |
Datensatz |
Spalten |
Format |
R01 |
1 |
1- 8 |
A8 |
R03 |
1 |
9- 19 |
A11 |
P03 |
1 |
123-123 |
F1.0 |
KERNS |
1 |
179-179 |
F1.0 |
HHNR |
1 |
183-186 |
F4.0 |
HZUO |
1 |
187-188 |
A2 |
HPAAR |
1 |
189-189 |
F1.0 |
HELT |
1 |
190-190 |
F1.0 |
HVOR |
1 |
191-191 |
F1.0 |
HNACH |
1 |
192-192 |
F1.0 |
A01 |
1 |
251-253 |
F3.0 |
A06 |
1 |
260-261 |
F2.0 |
A07 |
1 |
262-263 |
F2.0 |
PDO |
1 |
268-268 |
A1 |
HDO |
1 |
269-269 |
A1 |
Zusammenfassung
|
Fälle |
|
Gültig |
Fehlende Werte |
Gesamt |
|
N |
Prozent |
N |
Prozent |
N |
Prozent |
PDO_Test × PDO |
57430 |
100,0% |
0 |
,0% |
57430 |
100,0% |
PDO_Test × PDO
|
|
|
PDO |
Gesamt |
|
|
|
|
PDO_Test |
1,00 |
Beobachtete Häufigkeit |
6215 |
6215 |
2,00 |
7151 |
7151 |
3,00 |
14345 |
14345 |
4,00 |
2465 |
2465 |
5,00 |
984 |
984 |
6,00 |
23585 |
23585 |
7,00 |
2685 |
2685 |
Gesamt |
57430 |
57430 |
Zusammenfassung
|
Fälle |
|
Gültig |
Fehlende Werte |
Gesamt |
|
N |
Prozent |
N |
Prozent |
N |
Prozent |
HDO_Test × HDO |
57430 |
100,0% |
0 |
,0% |
57430 |
100,0% |
HDO_Test × HDO
|
|
|
HDO |
Gesamt |
|
|
|
|
HDO_Test |
1,00 |
Beobachtete Häufigkeit |
23585 |
23585 |
2,00 |
14231 |
14231 |
3,00 |
15843 |
15843 |
4,00 |
1785 |
1785 |
5,00 |
1986 |
1986 |
Gesamt |
57430 |
57430 |