/* CONSTRUCTION OF CLASS VARIABLE FOR RESPONDENT'S CURRENT WORK POSITION /* DATA: SELECTS 1999 /* DANIEL OESCH, MAY 2008 /* 14-Class schema constructed *1 Socio-cultural professionals *2 Socio-cultural semi-professionals *3 Skilled service workers *4 Routine serivce workers *5 Technical experts *6 Technicians *7 Skilled production workers *8 Routine production workers *10 Managers and administrators *11 Associate managers and administrators *12 Skilled clerks *13 Routine clerks *14 Liberal professions *15 Small business owners. /* 1. Recode variables used to construct class variable /* 1.1 Recode job variable (isco88 4-digit) for respondents fre rp216is. Recode rp216is (else = copy) into iscocu_r . Var lab iscocu_r "Current work position of respondent 1999 - isco88 4-digit" . fre iscocu_r. /* 1.2 Recode work position for respondents fre rp21500. Recode rp21500 (9=sysmis) (else=copy) into workcu_r . Val lab workcu_r 1 "Employee" 2 "Senior employee" 3 "Self-employed" . Fre workcu_r . /* 1.3 Recode education for respondents fre rp21300. Recode rp21300 (0 thru 3=1) (4 thru 9=2) (10 thru 12=3) (99=sysmis) into educat_r . Var lab educat_r "Highest level of education of respondent" . Val lab educat_r 1 "Lower than upper secondary education" 2 "Upper secondary education" 3 "Tertiary education" . fre educat_r. ************************************* /* 2. Construct class variables /* 2.1 Construct class variable based on respondents current job Compute clascu_r = -777. /* 2.2 Allocate self-employed to schema If workcu_r=3 and range(iscocu_r, 1000, 1239) clascu_r=14 . If workcu_r=3 and range(iscocu_r, 2100, 2470) clascu_r=14 . If workcu_r=3 and range(iscocu_r, 1300, 1320) clascu_r=15 . If workcu_r=3 and range(iscocu_r, 3000, 9400) clascu_r=15 . /* 2.3 Allocate employed managers and professionals (ISCO 1000 - 2470) to the schema If workcu_r NE 3 and range(iscocu_r, 110, 1239) clascu_r=10 . If workcu_r NE 3 and range(iscocu_r, 1300, 1320) clascu_r=11 . If workcu_r NE 3 and range(iscocu_r, 2100, 2213) clascu_r=5 . If workcu_r NE 3 and range(iscocu_r, 2220, 2321) clascu_r=1 . If workcu_r NE 3 and range(iscocu_r, 2330, 2340) clascu_r=2 . If workcu_r NE 3 and range(iscocu_r, 2350, 2359) clascu_r=1 . If workcu_r NE 3 and range(iscocu_r, 2410, 2429) clascu_r=10 . If workcu_r NE 3 and range(iscocu_r, 2430, 2432) clascu_r=2 . If workcu_r NE 3 and iscocu_r=2440 clascu_r=1 . If workcu_r NE 3 and iscocu_r=2441 clascu_r=10 . If workcu_r NE 3 and any(iscocu_r, 2442, 2443) clascu_r=1 . If workcu_r NE 3 and iscocu_r=2444 clascu_r=2 . If workcu_r NE 3 and iscocu_r=2445 clascu_r=1 . If workcu_r NE 3 and range(iscocu_r, 2446, 2450) clascu_r=2 . If workcu_r NE 3 and iscocu_r=2451 clascu_r=1 . If workcu_r NE 3 and range(iscocu_r, 2452, 2455) clascu_r=2 . If workcu_r NE 3 and iscocu_r=2460 clascu_r=1 . If workcu_r NE 3 and iscocu_r=2470 clascu_r=10 . /* 2.4 Allocate employed associate managers and associate professionals (ISCO 3000) to the schema If workcu_r NE 3 and range(iscocu_r, 3100, 3152) clascu_r=6 . If workcu_r NE 3 and range(iscocu_r, 3210, 3213) clascu_r=6 . If workcu_r NE 3 and range(iscocu_r, 3220, 3224) clascu_r=2 . If workcu_r NE 3 and iscocu_r=3225 clascu_r=3 . If workcu_r NE 3 and iscocu_r=3226 clascu_r=2 . If workcu_r NE 3 and any(iscocu_r, 3227, 3228) clascu_r=3 . If workcu_r NE 3 and range(iscocu_r, 3229, 3340) clascu_r=2 . If workcu_r NE 3 and iscocu_r=3400 clascu_r=11 . If workcu_r NE 3 and range(iscocu_r, 3410, 3433) clascu_r=11 . If workcu_r NE 3 and iscocu_r=3434 clascu_r=6 . If workcu_r NE 3 and range(iscocu_r, 3440, 3450) clascu_r=11 . If workcu_r NE 3 and range(iscocu_r, 3460, 3472) clascu_r=2 . If workcu_r NE 3 and range(iscocu_r, 3473, 3475) clascu_r=3 . If workcu_r NE 3 and iscocu_r=3480 clascu_r=2 . /* Locomotive engine drivers - to technicians If workcu_r NE 3 and iscocu_r=8311 clascu_r=6 . /*Police officers - to associate managers and administrators If workcu_r NE 3 and iscocu_r=5162 clascu_r=11 . /* 2.5 Allocate clerks and workers (ISCO 4000 - 8340 ) to the schema /* correct for skilled (upper secondary education or higher) and unskilled (less than upper secondary education) /* Skilled and routine clerks If workcu_r NE 3 and educat_r NE 1 and range(iscocu_r, 4000, 4223) clascu_r=12 . If workcu_r NE 3 and educat_r = 1 and range(iscocu_r, 4000, 4223) clascu_r=13 . If workcu_r NE 3 and educat_r NE 1 and any(iscocu_r, 5160, 5169) clascu_r=12 . If workcu_r NE 3 and educat_r=1 and any(iscocu_r, 5160, 5169) clascu_r=13 . If workcu_r NE 3 and any(iscocu_r, 5161, 5163) clascu_r=12 . /*Soldiers - to skilled clerks If workcu_r NE 3 and iscocu_r=100 clascu_r=12 . /* Skilled and routine service workers If workcu_r NE 3 and educat_r NE 1 and range(iscocu_r, 5100, 5149) clascu_r=3 . If workcu_r NE 3 and educat_r=1 and range(iscocu_r, 5100, 5149) clascu_r=4 . If workcu_r NE 3 and educat_r NE 1 and range(iscocu_r, 5200, 5220) clascu_r=3 . If workcu_r NE 3 and educat_r=1 and range(iscocu_r, 5200, 5220) clascu_r=4 . /* Bus and tram drivers - to skilled and routine service workers If workcu_r NE 3 and iscocu_r=8323 clascu_r=3 . /* Skilled and routine production workers If workcu_r NE 3 and educat_r NE 1 and range(iscocu_r, 6100, 6154) clascu_r=7 . If workcu_r NE 3 and educat_r=1 and range(iscocu_r, 6100, 6154) clascu_r=8 . If workcu_r NE 3 and educat_r NE 1 and range(iscocu_r, 7100, 7442) clascu_r=7 . If workcu_r NE 3 and educat_r=1 and range(iscocu_r, 7100, 7442) clascu_r=8 . If workcu_r NE 3 and educat_r NE 1 and range(iscocu_r, 8100, 8300) clascu_r=7 . If workcu_r NE 3 and educat_r=1 and range(iscocu_r, 8100, 8300) clascu_r=8 . If workcu_r NE 3 and educat_r NE 1 and range(iscocu_r, 8312, 8322) clascu_r=7 . If workcu_r NE 3 and educat_r=1 and range(iscocu_r, 8312, 8322) clascu_r=8 . If workcu_r NE 3 and educat_r NE 1 and range(iscocu_r, 8324, 8340) clascu_r=7 . If workcu_r NE 3 and educat_r=1 and range(iscocu_r, 8324, 8340) clascu_r=8 . /* 2.6 Allocate elementary occupations (ISCO 9000 - 9330 ) to the schema /* Routine service workers If workcu_r NE 3 and range(iscocu_r, 9100, 9152) clascu_r=4 . /* Routine production workers If workcu_r NE 3 and range(iscocu_r, 9153, 9330) clascu_r=8 . Var lab clascu_r "Respondent's class position based on his current job" . Val lab clascu_r 1 "Socio-cultural professionals" 2 "Socio-cultural semi-professionals" 3 "Skilled service workers" 4 "Routine serivce workers" 5 "Technical experts" 6 "Technicians" 7 "Skilled production workers" 8 "Routine production workers" 10 "Managers and administrators" 11 "Associate managers and administrators" 12 "Skilled clerks" 13 "Routine clerks" 14 "Liberal professions" 15 "Small business owners" . Missing values clascu_r (-777). Fre clascu_r . ************************************************************** ************************************************************** /* CONSTRUCTION OF CLASS VARIABLE FOR RESPONDENT'S LAST WORK POSITION /* DATA: SELECTS 1999 /* DANIEL OESCH, MAY 2008 /* 14-Class schema constructed *1 Socio-cultural professionals *2 Socio-cultural semi-professionals *3 Skilled service workers *4 Routine serivce workers *5 Technical experts *6 Technicians *7 Skilled production workers *8 Routine production workers *10 Managers and administrators *11 Associate managers and administrators *12 Skilled clerks *13 Routine clerks *14 Liberal professions *15 Small business owners. /* 1. Recode variables used to construct class variable /* 1.1 Combine information on respondent's last job from three variables (all ISCO88 4-digit, r's last job) Freq rp250is rp263is rp277is . Compute iscola_r = rp250is. Var lab iscola_r "Last work position of respondent - isco88 4-digit" . Do If missing (iscola_r) . compute iscola_r=rp263is. End if. Do If missing (iscola_r) . compute iscola_r=rp277is. End if. Recode iscola_r (else=copy) into iscola_r . Freq iscola_r . /* 1.2 Recode work position for respondents Freq rp24900 rp26200 rp27600. Compute workla_r = rp24900. Var lab workla_r "Last work position of respondent" . Do If missing (workla_r) . compute workla_r=rp26200. End if. Do If missing (workla_r) . compute workla_r=rp27600. End if. Recode workla_r (9=sysmis) (else=copy) into workla_r . Val lab workla_r 1 "Employee" 2 "Senior employee" 3 "Self-employed" . Freq workla_r . /* 1.3 Education for respondents has already been recoded (in file: Class_Respondent_CurrentJob_Selects07=) Freq educat_r . ************************************* /* 2. Construct class variables /* 2.1 Construct class variable based on RESPONDENT'S LAST job Compute clasla_r= -777. /* 2.2 Allocate self-employed to schema If workla_r=3 and range(iscola_r, 110, 1239) clasla_r=14 . If workla_r=3 and range(iscola_r, 2100, 2470) clasla_r=14 . If workla_r=3 and range(iscola_r, 1300, 1320) clasla_r=15 . If workla_r=3 and range(iscola_r, 3000, 9400) clasla_r=15 . /* 2.3 Allocate employed managers and professionals (ISCO 1000 - 2470) to the schema If workla_r NE 3 and range(iscola_r, 110, 1239) clasla_r=10 . If workla_r NE 3 and range(iscola_r, 1300, 1320) clasla_r=11 . If workla_r NE 3 and range(iscola_r, 2100, 2213) clasla_r=5 . If workla_r NE 3 and range(iscola_r, 2220, 2321) clasla_r=1 . If workla_r NE 3 and range(iscola_r, 2330, 2340) clasla_r=2 . If workla_r NE 3 and range(iscola_r, 2350, 2359) clasla_r=1 . If workla_r NE 3 and range(iscola_r, 2410, 2429) clasla_r=10 . If workla_r NE 3 and range(iscola_r, 2430, 2432) clasla_r=2 . If workla_r NE 3 and iscola_r=2440 clasla_r=1 . If workla_r NE 3 and iscola_r=2441 clasla_r=10 . If workla_r NE 3 and any(iscola_r, 2442, 2443) clasla_r=1 . If workla_r NE 3 and iscola_r=2444 clasla_r=2 . If workla_r NE 3 and iscola_r=2445 clasla_r=1 . If workla_r NE 3 and range(iscola_r, 2446, 2450) clasla_r=2 . If workla_r NE 3 and iscola_r=2451 clasla_r=1 . If workla_r NE 3 and range(iscola_r, 2452, 2455) clasla_r=2 . If workla_r NE 3 and iscola_r=2460 clasla_r=1 . If workla_r NE 3 and iscola_r=2470 clasla_r=10 . /* 2.4 Allocate employed technicians, associate managers and associate professionals (ISCO 3000) to the schema If workla_r NE 3 and range(iscola_r, 3100, 3152) clasla_r=6 . If workla_r NE 3 and range(iscola_r, 3210, 3213) clasla_r=6 . If workla_r NE 3 and range(iscola_r, 3220, 3224) clasla_r=2 . If workla_r NE 3 and iscola_r=3225 clasla_r=3 . If workla_r NE 3 and iscola_r=3226 clasla_r=2 . If workla_r NE 3 and any(iscola_r, 3227, 3228) clasla_r=3 . If workla_r NE 3 and range(iscola_r, 3229, 3340) clasla_r=2 . If workla_r NE 3 and iscola_r=3400 clasla_r=11 . If workla_r NE 3 and range(iscola_r, 3410, 3433) clasla_r=11 . If workla_r NE 3 and iscola_r=3434 clasla_r=6 . If workla_r NE 3 and range(iscola_r, 3440, 3450) clasla_r=11 . If workla_r NE 3 and range(iscola_r, 3460, 3472) clasla_r=2 . If workla_r NE 3 and range(iscola_r, 3473, 3475) clasla_r=3 . If workla_r NE 3 and iscola_r=3480 clasla_r=2 . /* Locomotive engine drivers - to technicians If workla_r NE 3 and iscola_r=8311 clasla_r=6 . /*Police officers - to associate managers and administrators If workla_r NE 3 and iscola_r=5162 clasla_r=11 . /* 2.5 Allocate clerks and workers (ISCO 4000 - 8340 ) to the schema /* correct for skilled (upper secondary education or higher) and unskilled (less than upper secondary education) /* Skilled and routine clerks If workla_r NE 3 and educat_r NE 1 and range(iscola_r, 4000, 4223) clasla_r=12 . If workla_r NE 3 and educat_r = 1 and range(iscola_r, 4000, 4223) clasla_r=13 . If workla_r NE 3 and educat_r NE 1 and any(iscola_r, 5160, 5169) clasla_r=12 . If workla_r NE 3 and educat_r=1 and any(iscola_r, 5160, 5169) clasla_r=13 . If workla_r NE 3 and any(iscola_r, 5161, 5163) clasla_r=12 . /*Soldiers - to skilled clerks If workla_r NE 3 and iscola_r=100 clasla_r=12 . /* Skilled and routine service workers If workla_r NE 3 and educat_r NE 1 and range(iscola_r, 5100, 5149) clasla_r=3 . If workla_r NE 3 and educat_r=1 and range(iscola_r, 5100, 5149) clasla_r=4 . If workla_r NE 3 and educat_r NE 1 and range(iscola_r, 5200, 5220) clasla_r=3 . If workla_r NE 3 and educat_r=1 and range(iscola_r, 5200, 5220) clasla_r=4 . /* Bus and tram drivers - to skilled and routine service workers If workla_r NE 3 and iscola_r=8323 clasla_r=3 . /* Skilled and routine production workers If workla_r NE 3 and educat_r NE 1 and range(iscola_r, 6100, 6154) clasla_r=7 . If workla_r NE 3 and educat_r=1 and range(iscola_r, 6100, 6154) clasla_r=8 . If workla_r NE 3 and educat_r NE 1 and range(iscola_r, 7100, 7442) clasla_r=7 . If workla_r NE 3 and educat_r=1 and range(iscola_r, 7100, 7442) clasla_r=8 . If workla_r NE 3 and educat_r NE 1 and range(iscola_r, 8100, 8300) clasla_r=7 . If workla_r NE 3 and educat_r=1 and range(iscola_r, 8100, 8300) clasla_r=8 . If workla_r NE 3 and educat_r NE 1 and range(iscola_r, 8312, 8322) clasla_r=7 . If workla_r NE 3 and educat_r=1 and range(iscola_r, 8312, 8322) clasla_r=8 . If workla_r NE 3 and educat_r NE 1 and range(iscola_r, 8324, 8340) clasla_r=7 . If workla_r NE 3 and educat_r=1 and range(iscola_r, 8324, 8340) clasla_r=8 . /* 2.6 Allocate elementary occupations (ISCO 9000 - 9330 ) to the schema /* Routine service workers If workla_r NE 3 and range(iscola_r, 9100, 9152) clasla_r=4 . /* Routine production workers If workla_r NE 3 and range(iscola_r, 9153, 9330) clasla_r=8 . Var lab clasla_r "Respondent's class position based on his last job". Val lab clasla_r 1 "Socio-cultural professionals" 2 "Socio-cultural semi-professionals" 3 "Skilled service workers" 4 "Routine serivce workers" 5 "Technical experts" 6 "Technicians" 7 "Skilled production workers" 8 "Routine production workers" 10 "Managers and administrators" 11 "Associate managers and administrators" 12 "Skilled clerks" 13 "Routine clerks" 14 "Liberal professions" 15 "Small business owners" . Missing values clasla_r (-777). Freq clasla_r . ************************************************************** ************************************************************** /* CONSTRUCTION OF CLASS VARIABLE FOR PARTNER'S CURRENT WORK POSITION /* DATA: SELECTS 1999 /* DANIEL OESCH, MAY 2008 /* 14-Class schema constructed *1 Socio-cultural professionals *2 Socio-cultural semi-professionals *3 Skilled service workers *4 Routine serivce workers *5 Technical experts *6 Technicians *7 Skilled production workers *8 Routine production workers *10 Managers and administrators *11 Associate managers and administrators *12 Skilled clerks *13 Routine clerks *14 Liberal professions *15 Small business owners. /* 1. Recode variables used to construct class variable /* 1.1 Combine information on PARTNER's current job from four variables (all ISCO88 4-digit, p's current job) Freq rp222is rp255is rp269is rp283is. Compute iscocu_p = rp222is. Var lab iscocu_p "Current work position of partner - isco88 4-digit" . Do If missing (iscocu_p) . compute iscocu_p=rp255is. End if. Do If missing (iscocu_p) . compute iscocu_p=rp269is. End if. Do If missing (iscocu_p) . compute iscocu_p=rp283is. End if. Freq iscocu_p . /* 1.2 Recode current work position for partner fre rp22100 rp25400 rp26800 rp28200. Cro rp22100 by rp25400. Compute workcu_p = rp22100. Var lab workcu_p "Current work position of partner" . Do If missing (workcu_p) . compute workcu_p=rp25400. End if. Do If missing (workcu_p) . compute workcu_p=rp26800. End if. Do If missing (workcu_p) . compute workcu_p=rp28200. End if. Recode workcu_p (9=sysmis) (else=copy) into workcu_p . Val lab workcu_p 1 "Employee" 2 "Senior employee" 3 "Self-employed" . Freq workcu_p . /* 1.3 Education for partners Freq rp21900 rp25210 rp26610 rp28010. Compute educall_p = rp21900. Var lab educall_p "Unified variable: highest level of education of partner" . Do If missing (educall_p) . compute educall_p=rp25210. End if. Do If missing (educall_p) . compute educall_p=rp26610. End if. Do If missing (educall_p) . compute educall_p=rp28010. End if. Freq educall_p . Recode educall_p (0 thru 3=1) (4 thru 9=2) (10 thru 12=3) (99=sysmis) into educat_p . Var lab educat_p "Highest level of education of partner, recoded" . Val lab educat_p 1 "Lower than upper secondary education" 2 "Upper secondary education" 3 "Tertiary education" . Freq educat_p . ************************************* /* 2. Construct class variables /* 2.1 Construct class variable based of partner's current job Compute clascu_p= -777. /* 2.2 Allocate self-employed to schema If workcu_p=3 and range(iscocu_p, 110, 1239) clascu_p=14 . If workcu_p=3 and range(iscocu_p, 2100, 2470) clascu_p=14 . If workcu_p=3 and range(iscocu_p, 1300, 1320) clascu_p=15 . If workcu_p=3 and range(iscocu_p, 3000, 9400) clascu_p=15 . /* 2.3 Allocate employed managers and professionals (ISCO 1000 - 2470) to the schema If workcu_p NE 3 and range(iscocu_p, 110, 1239) clascu_p=10 . If workcu_p NE 3 and range(iscocu_p, 1300, 1320) clascu_p=11 . If workcu_p NE 3 and range(iscocu_p, 2100, 2213) clascu_p=5 . If workcu_p NE 3 and range(iscocu_p, 2220, 2321) clascu_p=1 . If workcu_p NE 3 and range(iscocu_p, 2330, 2340) clascu_p=2 . If workcu_p NE 3 and range(iscocu_p, 2350, 2359) clascu_p=1 . If workcu_p NE 3 and range(iscocu_p, 2410, 2429) clascu_p=10 . If workcu_p NE 3 and range(iscocu_p, 2430, 2432) clascu_p=2 . If workcu_p NE 3 and iscocu_p=2440 clascu_p=1 . If workcu_p NE 3 and iscocu_p=2441 clascu_p=10 . If workcu_p NE 3 and any(iscocu_p, 2442, 2443) clascu_p=1 . If workcu_p NE 3 and iscocu_p=2444 clascu_p=2 . If workcu_p NE 3 and iscocu_p=2445 clascu_p=1 . If workcu_p NE 3 and range(iscocu_p, 2446, 2450) clascu_p=2 . If workcu_p NE 3 and iscocu_p=2451 clascu_p=1 . If workcu_p NE 3 and range(iscocu_p, 2452, 2455) clascu_p=2 . If workcu_p NE 3 and iscocu_p=2460 clascu_p=1 . If workcu_p NE 3 and iscocu_p=2470 clascu_p=10 . /* 2.4 Allocate employed technicians, associate managers and associate professionals (ISCO 3000) to the schema If workcu_p NE 3 and range(iscocu_p, 3100, 3152) clascu_p=6 . If workcu_p NE 3 and range(iscocu_p, 3210, 3213) clascu_p=6 . If workcu_p NE 3 and range(iscocu_p, 3220, 3224) clascu_p=2 . If workcu_p NE 3 and iscocu_p=3225 clascu_p=3 . If workcu_p NE 3 and iscocu_p=3226 clascu_p=2 . If workcu_p NE 3 and any(iscocu_p, 3227, 3228) clascu_p=3 . If workcu_p NE 3 and range(iscocu_p, 3229, 3340) clascu_p=2 . If workcu_p NE 3 and iscocu_p=3400 clascu_p=11 . If workcu_p NE 3 and range(iscocu_p, 3410, 3433) clascu_p=11 . If workcu_p NE 3 and iscocu_p=3434 clascu_p=6 . If workcu_p NE 3 and range(iscocu_p, 3440, 3450) clascu_p=11 . If workcu_p NE 3 and range(iscocu_p, 3460, 3472) clascu_p=2 . If workcu_p NE 3 and range(iscocu_p, 3473, 3475) clascu_p=3 . If workcu_p NE 3 and iscocu_p=3480 clascu_p=2 . /* Locomotive engine drivers - to technicians If workcu_p NE 3 and iscocu_p=8311 clascu_p=6 . /*Police officers - to associate managers and administrators If workcu_p NE 3 and iscocu_p=5162 clascu_p=11 . /* 2.4 Allocate clerks and workers (ISCO 4000 - 8340 ) to the schema /* correct for skilled (upper secondary education or higher) and unskilled (less than upper secondary education) /* Skilled and routine clerks If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 4000, 4223) clascu_p=12 . If workcu_p NE 3 and educat_p = 1 and range(iscocu_p, 4000, 4223) clascu_p=13 . If workcu_p NE 3 and educat_p NE 1 and any(iscocu_p, 5160, 5169) clascu_p=12 . If workcu_p NE 3 and educat_p =1 and any(iscocu_p, 5160, 5169) clascu_p=13 . If workcu_p NE 3 and any(iscocu_p, 5161, 5163) clascu_p=12 . /*Soldiers - to skilled clerks If workcu_p NE 3 and iscocu_p=100 clascu_p=12 . /* Skilled and routine service workers If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 5100, 5149) clascu_p=3 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 5100, 5149) clascu_p=4 . If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 5200, 5220) clascu_p=3 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 5200, 5220) clascu_p=4 . /* Bus and tram drivers - to skilled and routine service workers If workcu_p NE 3 and iscocu_p=8323 clascu_p=3 . /* Skilled and routine production workers If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 6100, 6154) clascu_p=7 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 6100, 6154) clascu_p=8 . If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 7100, 7442) clascu_p=7 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 7100, 7442) clascu_p=8 . If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 8100, 8300) clascu_p=7 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 8100, 8300) clascu_p=8 . If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 8312, 8322) clascu_p=7 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 8312, 8322) clascu_p=8 . If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 8324, 8340) clascu_p=7 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 8324, 8340) clascu_p=8 . /* 2.4 Allocate elementary occupations (ISCO 9000 - 9330 ) to the schema /* Routine service workers If workcu_p NE 3 and range(iscocu_p, 9100, 9152) clascu_p=4 . /* Routine production workers If workcu_p NE 3 and range(iscocu_p, 9153, 9330) clascu_p=8 . Var lab clascu_p "Partner's class position based on his current job". Val lab clascu_p 1 "Socio-cultural professionals" 2 "Socio-cultural semi-professionals" 3 "Skilled service workers" 4 "Routine serivce workers" 5 "Technical experts" 6 "Technicians" 7 "Skilled production workers" 8 "Routine production workers" 10 "Managers and administrators" 11 "Associate managers and administrators" 12 "Skilled clerks" 13 "Routine clerks" 14 "Liberal professions" 15 "Small business owners" . Missing values clascu_p (-777). Freq clascu_p . ************************************************************** ************************************************************** /* CONSTRUCTION OF CLASS VARIABLE FOR PARTNER'S CURRENT WORK POSITION /* DATA: SELECTS 1999 /* DANIEL OESCH, MAY 2008 /* 14-Class schema constructed *1 Socio-cultural professionals *2 Socio-cultural semi-professionals *3 Skilled service workers *4 Routine serivce workers *5 Technical experts *6 Technicians *7 Skilled production workers *8 Routine production workers *10 Managers and administrators *11 Associate managers and administrators *12 Skilled clerks *13 Routine clerks *14 Liberal professions *15 Small business owners. /* 1. Recode variables used to construct class variable /* 1.1 Combine information on PARTNER's current job from four variables (all ISCO88 4-digit, p's current job) Freq rp222is rp255is rp269is rp283is. Compute iscocu_p = rp222is. Var lab iscocu_p "Current work position of partner - isco88 4-digit" . Do If missing (iscocu_p) . compute iscocu_p=rp255is. End if. Do If missing (iscocu_p) . compute iscocu_p=rp269is. End if. Do If missing (iscocu_p) . compute iscocu_p=rp283is. End if. Freq iscocu_p . /* 1.2 Recode current work position for partner fre rp22100 rp25400 rp26800 rp28200. Cro rp22100 by rp25400. Compute workcu_p = rp22100. Var lab workcu_p "Current work position of partner" . Do If missing (workcu_p) . compute workcu_p=rp25400. End if. Do If missing (workcu_p) . compute workcu_p=rp26800. End if. Do If missing (workcu_p) . compute workcu_p=rp28200. End if. Recode workcu_p (9=sysmis) (else=copy) into workcu_p . Val lab workcu_p 1 "Employee" 2 "Senior employee" 3 "Self-employed" . Freq workcu_p . /* 1.3 Education for partners Freq rp21900 rp25210 rp26610 rp28010. Compute educall_p = rp21900. Var lab educall_p "Unified variable: highest level of education of partner" . Do If missing (educall_p) . compute educall_p=rp25210. End if. Do If missing (educall_p) . compute educall_p=rp26610. End if. Do If missing (educall_p) . compute educall_p=rp28010. End if. Freq educall_p . Recode educall_p (0 thru 3=1) (4 thru 9=2) (10 thru 12=3) (99=sysmis) into educat_p . Var lab educat_p "Highest level of education of partner, recoded" . Val lab educat_p 1 "Lower than upper secondary education" 2 "Upper secondary education" 3 "Tertiary education" . Freq educat_p . ************************************* /* 2. Construct class variables /* 2.1 Construct class variable based of partner's current job Compute clascu_p= -777. /* 2.2 Allocate self-employed to schema If workcu_p=3 and range(iscocu_p, 110, 1239) clascu_p=14 . If workcu_p=3 and range(iscocu_p, 2100, 2470) clascu_p=14 . If workcu_p=3 and range(iscocu_p, 1300, 1320) clascu_p=15 . If workcu_p=3 and range(iscocu_p, 3000, 9400) clascu_p=15 . /* 2.3 Allocate employed managers and professionals (ISCO 1000 - 2470) to the schema If workcu_p NE 3 and range(iscocu_p, 110, 1239) clascu_p=10 . If workcu_p NE 3 and range(iscocu_p, 1300, 1320) clascu_p=11 . If workcu_p NE 3 and range(iscocu_p, 2100, 2213) clascu_p=5 . If workcu_p NE 3 and range(iscocu_p, 2220, 2321) clascu_p=1 . If workcu_p NE 3 and range(iscocu_p, 2330, 2340) clascu_p=2 . If workcu_p NE 3 and range(iscocu_p, 2350, 2359) clascu_p=1 . If workcu_p NE 3 and range(iscocu_p, 2410, 2429) clascu_p=10 . If workcu_p NE 3 and range(iscocu_p, 2430, 2432) clascu_p=2 . If workcu_p NE 3 and iscocu_p=2440 clascu_p=1 . If workcu_p NE 3 and iscocu_p=2441 clascu_p=10 . If workcu_p NE 3 and any(iscocu_p, 2442, 2443) clascu_p=1 . If workcu_p NE 3 and iscocu_p=2444 clascu_p=2 . If workcu_p NE 3 and iscocu_p=2445 clascu_p=1 . If workcu_p NE 3 and range(iscocu_p, 2446, 2450) clascu_p=2 . If workcu_p NE 3 and iscocu_p=2451 clascu_p=1 . If workcu_p NE 3 and range(iscocu_p, 2452, 2455) clascu_p=2 . If workcu_p NE 3 and iscocu_p=2460 clascu_p=1 . If workcu_p NE 3 and iscocu_p=2470 clascu_p=10 . /* 2.4 Allocate employed technicians, associate managers and associate professionals (ISCO 3000) to the schema If workcu_p NE 3 and range(iscocu_p, 3100, 3152) clascu_p=6 . If workcu_p NE 3 and range(iscocu_p, 3210, 3213) clascu_p=6 . If workcu_p NE 3 and range(iscocu_p, 3220, 3224) clascu_p=2 . If workcu_p NE 3 and iscocu_p=3225 clascu_p=3 . If workcu_p NE 3 and iscocu_p=3226 clascu_p=2 . If workcu_p NE 3 and any(iscocu_p, 3227, 3228) clascu_p=3 . If workcu_p NE 3 and range(iscocu_p, 3229, 3340) clascu_p=2 . If workcu_p NE 3 and iscocu_p=3400 clascu_p=11 . If workcu_p NE 3 and range(iscocu_p, 3410, 3433) clascu_p=11 . If workcu_p NE 3 and iscocu_p=3434 clascu_p=6 . If workcu_p NE 3 and range(iscocu_p, 3440, 3450) clascu_p=11 . If workcu_p NE 3 and range(iscocu_p, 3460, 3472) clascu_p=2 . If workcu_p NE 3 and range(iscocu_p, 3473, 3475) clascu_p=3 . If workcu_p NE 3 and iscocu_p=3480 clascu_p=2 . /* Locomotive engine drivers - to technicians If workcu_p NE 3 and iscocu_p=8311 clascu_p=6 . /*Police officers - to associate managers and administrators If workcu_p NE 3 and iscocu_p=5162 clascu_p=11 . /* 2.4 Allocate clerks and workers (ISCO 4000 - 8340 ) to the schema /* correct for skilled (upper secondary education or higher) and unskilled (less than upper secondary education) /* Skilled and routine clerks If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 4000, 4223) clascu_p=12 . If workcu_p NE 3 and educat_p = 1 and range(iscocu_p, 4000, 4223) clascu_p=13 . If workcu_p NE 3 and educat_p NE 1 and any(iscocu_p, 5160, 5169) clascu_p=12 . If workcu_p NE 3 and educat_p =1 and any(iscocu_p, 5160, 5169) clascu_p=13 . If workcu_p NE 3 and any(iscocu_p, 5161, 5163) clascu_p=12 . /*Soldiers - to skilled clerks If workcu_p NE 3 and iscocu_p=100 clascu_p=12 . /* Skilled and routine service workers If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 5100, 5149) clascu_p=3 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 5100, 5149) clascu_p=4 . If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 5200, 5220) clascu_p=3 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 5200, 5220) clascu_p=4 . /* Bus and tram drivers - to skilled and routine service workers If workcu_p NE 3 and iscocu_p=8323 clascu_p=3 . /* Skilled and routine production workers If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 6100, 6154) clascu_p=7 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 6100, 6154) clascu_p=8 . If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 7100, 7442) clascu_p=7 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 7100, 7442) clascu_p=8 . If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 8100, 8300) clascu_p=7 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 8100, 8300) clascu_p=8 . If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 8312, 8322) clascu_p=7 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 8312, 8322) clascu_p=8 . If workcu_p NE 3 and educat_p NE 1 and range(iscocu_p, 8324, 8340) clascu_p=7 . If workcu_p NE 3 and educat_p =1 and range(iscocu_p, 8324, 8340) clascu_p=8 . /* 2.4 Allocate elementary occupations (ISCO 9000 - 9330 ) to the schema /* Routine service workers If workcu_p NE 3 and range(iscocu_p, 9100, 9152) clascu_p=4 . /* Routine production workers If workcu_p NE 3 and range(iscocu_p, 9153, 9330) clascu_p=8 . Var lab clascu_p "Partner's class position based on his current job". Val lab clascu_p 1 "Socio-cultural professionals" 2 "Socio-cultural semi-professionals" 3 "Skilled service workers" 4 "Routine serivce workers" 5 "Technical experts" 6 "Technicians" 7 "Skilled production workers" 8 "Routine production workers" 10 "Managers and administrators" 11 "Associate managers and administrators" 12 "Skilled clerks" 13 "Routine clerks" 14 "Liberal professions" 15 "Small business owners" . Missing values clascu_p (-777). Freq clascu_p . ************************************************************** ************************************************************** /* CONSTRUCTION OF CLASS VARIABLE FOR PARTNER'S LAST WORK POSITION /* DATA: SELECTS 1999 /* DANIEL OESCH, MAY 2008 /* 14-Class schema constructed *1 Socio-cultural professionals *2 Socio-cultural semi-professionals *3 Skilled service workers *4 Routine serivce workers *5 Technical experts *6 Technicians *7 Skilled production workers *8 Routine production workers *10 Managers and administrators *11 Associate managers and administrators *12 Skilled clerks *13 Routine clerks *14 Liberal professions *15 Small business owners. /* 1. Recode variables used to construct class variable /* 1.1 Combine information on partner's last job from four variables (all ISCO88 4-digit, r's last job) Freq rp226is rp259is rp273is rp287is . Compute iscola_p = rp226is. Var lab iscola_p "Last work position of partner - isco88 4-digit" . Do If missing (iscola_p) . compute iscola_p=rp259is. End if. Do If missing (iscola_p) . compute iscola_p=rp273is. End if. Do If missing (iscola_p) . compute iscola_p= rp287is. End if. Freq iscola_p . /* 1.2 Recode last work position for partner Freq rp22500 rp25800 rp27200 rp28600. Cro rp22500 by rp25800. Compute workla_p = rp22500. Var lab workla_p "Last work position of partner" . Do If missing (workla_p) . compute workla_p=rp25800. End if. Do If missing (workla_p) . compute workla_p=rp27200. End if. Do If missing (workla_p) . compute workla_p=rp28600. End if. Recode workla_p (9=sysmis) (else=copy) into workla_p . Val lab workla_p 1 "Employee" 2 "Senior employee" 3 "Self-employed" . Freq workla_p . /* 1.3 Education of partners - already recoded in Class_Partner_CurrentJob_Selects07 Freq educat_p . ************************************* /* 2. Construct class variables /* 2.1 Construct class variable based of partner's last job Compute clasla_p= -777. /* 2.2 Allocate self-employed to schema If workla_p=3 and range(iscola_p, 110, 1239) clasla_p=14 . If workla_p=3 and range(iscola_p, 2100, 2470) clasla_p=14 . If workla_p=3 and range(iscola_p, 1300, 1320) clasla_p=15 . If workla_p=3 and range(iscola_p, 3000, 9400) clasla_p=15 . /* 2.3 Allocate employed managers and professionals (ISCO 1000 - 2470) to the schema If workla_p NE 3 and range(iscola_p, 110, 1239) clasla_p=10 . If workla_p NE 3 and range(iscola_p, 1300, 1320) clasla_p=11 . If workla_p NE 3 and range(iscola_p, 2100, 2213) clasla_p=5 . If workla_p NE 3 and range(iscola_p, 2220, 2321) clasla_p=1 . If workla_p NE 3 and range(iscola_p, 2330, 2340) clasla_p=2 . If workla_p NE 3 and range(iscola_p, 2350, 2359) clasla_p=1 . If workla_p NE 3 and range(iscola_p, 2410, 2429) clasla_p=10 . If workla_p NE 3 and range(iscola_p, 2430, 2432) clasla_p=2 . If workla_p NE 3 and iscola_p=2440 clasla_p=1 . If workla_p NE 3 and iscola_p=2441 clasla_p=10 . If workla_p NE 3 and any(iscola_p, 2442, 2443) clasla_p=1 . If workla_p NE 3 and iscola_p=2444 clasla_p=2 . If workla_p NE 3 and iscola_p=2445 clasla_p=1 . If workla_p NE 3 and range(iscola_p, 2446, 2450) clasla_p=2 . If workla_p NE 3 and iscola_p=2451 clasla_p=1 . If workla_p NE 3 and range(iscola_p, 2452, 2455) clasla_p=2 . If workla_p NE 3 and iscola_p=2460 clasla_p=1 . If workla_p NE 3 and iscola_p=2470 clasla_p=10 . /* 2.4 Allocate employed technicians, associate managers and associate professionals (ISCO 3000) to the schema If workla_p NE 3 and range(iscola_p, 3100, 3152) clasla_p=6 . If workla_p NE 3 and range(iscola_p, 3210, 3213) clasla_p=6 . If workla_p NE 3 and range(iscola_p, 3220, 3224) clasla_p=2 . If workla_p NE 3 and iscola_p=3225 clasla_p=3 . If workla_p NE 3 and iscola_p=3226 clasla_p=2 . If workla_p NE 3 and any(iscola_p, 3227, 3228) clasla_p=3 . If workla_p NE 3 and range(iscola_p, 3229, 3340) clasla_p=2 . If workla_p NE 3 and iscola_p=3400 clasla_p=11 . If workla_p NE 3 and range(iscola_p, 3410, 3433) clasla_p=11 . If workla_p NE 3 and iscola_p=3434 clasla_p=6 . If workla_p NE 3 and range(iscola_p, 3440, 3450) clasla_p=11 . If workla_p NE 3 and range(iscola_p, 3460, 3472) clasla_p=2 . If workla_p NE 3 and range(iscola_p, 3473, 3475) clasla_p=3 . If workla_p NE 3 and iscola_p=3480 clasla_p=2 . /* Locomotive engine drivers - to technicians If workla_p NE 3 and iscola_p=8311 clasla_p=6 . /*Police officers - to associate managers and administrators If workla_p NE 3 and iscola_p=5162 clasla_p=11 . /* 2.5 Allocate clerks and workers (ISCO 4000 - 8340 ) to the schema /* correct for skilled (upper secondary education or higher) and unskilled (less than upper secondary education) /* Skilled and routine clerks If workla_p NE 3 and educat_p NE 1 and range(iscola_p, 4000, 4223) clasla_p=12 . If workla_p NE 3 and educat_p = 1 and range(iscola_p, 4000, 4223) clasla_p=13 . If workla_p NE 3 and educat_p NE 1 and any(iscola_p, 5160, 5169) clasla_p=12 . If workla_p NE 3 and educat_p =1 and any(iscola_p, 5160, 5169) clasla_p=13 . If workla_p NE 3 and any(iscola_p, 5161, 5163) clasla_p=12 . /*Soldiers - to skilled clerks If workla_p NE 3 and iscola_p=100 clasla_p=12 . /* Skilled and routine service workers If workla_p NE 3 and educat_p NE 1 and range(iscola_p, 5100, 5149) clasla_p=3 . If workla_p NE 3 and educat_p =1 and range(iscola_p, 5100, 5149) clasla_p=4 . If workla_p NE 3 and educat_p NE 1 and range(iscola_p, 5200, 5220) clasla_p=3 . If workla_p NE 3 and educat_p =1 and range(iscola_p, 5200, 5220) clasla_p=4 . /* Bus and tram drivers - to skilled and routine service workers If workla_p NE 3 and iscola_p=8323 clasla_p=3 . /* Skilled and routine production workers If workla_p NE 3 and educat_p NE 1 and range(iscola_p, 6100, 6154) clasla_p=7 . If workla_p NE 3 and educat_p =1 and range(iscola_p, 6100, 6154) clasla_p=8 . If workla_p NE 3 and educat_p NE 1 and range(iscola_p, 7100, 7442) clasla_p=7 . If workla_p NE 3 and educat_p =1 and range(iscola_p, 7100, 7442) clasla_p=8 . If workla_p NE 3 and educat_p NE 1 and range(iscola_p, 8100, 8300) clasla_p=7 . If workla_p NE 3 and educat_p =1 and range(iscola_p, 8100, 8300) clasla_p=8 . If workla_p NE 3 and educat_p NE 1 and range(iscola_p, 8312, 8322) clasla_p=7 . If workla_p NE 3 and educat_p =1 and range(iscola_p, 8312, 8322) clasla_p=8 . If workla_p NE 3 and educat_p NE 1 and range(iscola_p, 8324, 8340) clasla_p=7 . If workla_p NE 3 and educat_p =1 and range(iscola_p, 8324, 8340) clasla_p=8 . /* 2.6 Allocate elementary occupations (ISCO 9000 - 9330 ) to the schema /* Routine service workers If workla_p NE 3 and range(iscola_p, 9100, 9152) clasla_p=4 . /* Routine production workers If workla_p NE 3 and range(iscola_p, 9153, 9330) clasla_p=8 . Var lab clasla_p "Partner's class position based on his last job". Val lab clasla_p 1 "Socio-cultural professionals" 2 "Socio-cultural semi-professionals" 3 "Skilled service workers" 4 "Routine serivce workers" 5 "Technical experts" 6 "Technicians" 7 "Skilled production workers" 8 "Routine production workers" 10 "Managers and administrators" 11 "Associate managers and administrators" 12 "Skilled clerks" 13 "Routine clerks" 14 "Liberal professions" 15 "Small business owners" . Missing val clasla_p (-777) . Freq clasla_p . ************************************************************** ************************************************************** /* CONSTRUCTION OF CLASS VARIABLE FOR MAIN EARNER'S CURRENT WORK POSITION /* DATA: SELECTS 1999 /* DANIEL OESCH, MAY 2008 /* 14-Class schema constructed *1 Socio-cultural professionals *2 Socio-cultural semi-professionals *3 Skilled service workers *4 Routine serivce workers *5 Technical experts *6 Technicians *7 Skilled production workers *8 Routine production workers *10 Managers and administrators *11 Associate managers and administrators *12 Skilled clerks *13 Routine clerks *14 Liberal professions *15 Small business owners. /* 1. Recode variables used to construct class variable /* 1.1 Combine information on MAIN EARNER'S CURRENT job from two variables (all ISCO88 4-digit, r's last job) Freq rp232is rp242is. Compute iscocu_m = rp232is. Var lab iscocu_m "Current work position of main earner - isco88 4-digit" . Do If missing (iscocu_m) . compute iscocu_m= rp242is. End if. Freq iscocu_m . cro rp232is by rp242is. /* 1.2 Recode current work position of main earner Freq rp23100 rp24100. Compute workcu_m = rp23100. Var lab workcu_m "Current work position of main earner" . Do If missing (workcu_m) . compute workcu_m=rp24100. End if. Recode workcu_m (9=sysmis) (else=copy) into workcu_m . Val lab workcu_m 1 "Employee" 2 "Senior employee" 3 "Self-employed" . Freq workcu_m . /* 1.3 Education of main earner Freq rp22910 rp23910 . Compute educall_m =rp22910. Var lab educall_m "Unified variable: highest level of education of main earner" . Do If missing (educall_m) . compute educall_m=rp23910. End if. Freq educall_m . Recode educall_m (0 thru 3=1) (4 thru 9=2) (10 thru 12=3) (99=sysmis) into educat_m. Var lab educat_m "Highest level of education of main earner, recoded" . Val lab educat_m 1 "Lower than upper secondary education" 2 "Upper secondary education" 3 "Tertiary education" . Freq educat_m . ************************************* /* 2. Construct class variables /* 2.1 Construct class variable based of main earner's current job Compute clascu_m= -777. /* 2.1 Allocate self-employed to schema If workcu_m=3 and range(iscocu_m, 110, 1239) clascu_m=14 . If workcu_m=3 and range(iscocu_m, 2100, 2470) clascu_m=14 . If workcu_m=3 and range(iscocu_m, 1300, 1320) clascu_m=15 . If workcu_m=3 and range(iscocu_m, 3000, 9400) clascu_m=15 . /* 2.2 Allocate employed managers and professionals (ISCO 1000 - 2470) to the schema If workcu_m NE 3 and range(iscocu_m, 110, 1239) clascu_m=10 . If workcu_m NE 3 and range(iscocu_m, 1300, 1320) clascu_m=11 . If workcu_m NE 3 and range(iscocu_m, 2100, 2213) clascu_m=5 . If workcu_m NE 3 and range(iscocu_m, 2220, 2321) clascu_m=1 . If workcu_m NE 3 and range(iscocu_m, 2330, 2340) clascu_m=2 . If workcu_m NE 3 and range(iscocu_m, 2350, 2359) clascu_m=1 . If workcu_m NE 3 and range(iscocu_m, 2410, 2429) clascu_m=10 . If workcu_m NE 3 and range(iscocu_m, 2430, 2432) clascu_m=2 . If workcu_m NE 3 and iscocu_m=2440 clascu_m=1 . If workcu_m NE 3 and iscocu_m=2441 clascu_m=10 . If workcu_m NE 3 and any(iscocu_m, 2442, 2443) clascu_m=1 . If workcu_m NE 3 and iscocu_m=2444 clascu_m=2 . If workcu_m NE 3 and iscocu_m=2445 clascu_m=1 . If workcu_m NE 3 and range(iscocu_m, 2446, 2450) clascu_m=2 . If workcu_m NE 3 and iscocu_m=2451 clascu_m=1 . If workcu_m NE 3 and range(iscocu_m, 2452, 2455) clascu_m=2 . If workcu_m NE 3 and iscocu_m=2460 clascu_m=1 . If workcu_m NE 3 and iscocu_m=2470 clascu_m=10 . /* 2.3 Allocate employed technicians, associate managers and associate professionals (ISCO 3000) to the schema If workcu_m NE 3 and range(iscocu_m, 3100, 3152) clascu_m=6 . If workcu_m NE 3 and range(iscocu_m, 3210, 3213) clascu_m=6 . If workcu_m NE 3 and range(iscocu_m, 3220, 3224) clascu_m=2 . If workcu_m NE 3 and iscocu_m=3225 clascu_m=3 . If workcu_m NE 3 and iscocu_m=3226 clascu_m=2 . If workcu_m NE 3 and any(iscocu_m, 3227, 3228) clascu_m=3 . If workcu_m NE 3 and range(iscocu_m, 3229, 3340) clascu_m=2 . If workcu_m NE 3 and iscocu_m=3400 clascu_m=11 . If workcu_m NE 3 and range(iscocu_m, 3410, 3433) clascu_m=11 . If workcu_m NE 3 and iscocu_m=3434 clascu_m=6 . If workcu_m NE 3 and range(iscocu_m, 3440, 3450) clascu_m=11 . If workcu_m NE 3 and range(iscocu_m, 3460, 3472) clascu_m=2 . If workcu_m NE 3 and range(iscocu_m, 3473, 3475) clascu_m=3 . If workcu_m NE 3 and iscocu_m=3480 clascu_m=2 . /* Locomotive engine drivers - to technicians If workcu_m NE 3 and iscocu_m=8311 clascu_m=6 . /*Police officers - to associate managers and administrators If workcu_m NE 3 and iscocu_m=5162 clascu_m=11 . /* 2.4 Allocate clerks and workers (ISCO 4000 - 8340 ) to the schema /* correct for skilled (upper secondary education or higher) and unskilled (less than upper secondary education) /* Skilled and routine clerks If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 4000, 4223) clascu_m=12 . If workcu_m NE 3 and educat_m = 1 and range(iscocu_m, 4000, 4223) clascu_m=13 . If workcu_m NE 3 and educat_m NE 1 and any(iscocu_m, 5160, 5169) clascu_m=12 . If workcu_m NE 3 and educat_m=1 and any(iscocu_m, 5160, 5169) clascu_m=13 . If workcu_m NE 3 and any(iscocu_m, 5161, 5163) clascu_m=12 . /*Soldiers - to skilled clerks If workcu_m NE 3 and iscocu_m=100 clascu_m=12 . /* Skilled and routine service workers If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 5100, 5149) clascu_m=3 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 5100, 5149) clascu_m=4 . If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 5200, 5220) clascu_m=3 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 5200, 5220) clascu_m=4 . /* Bus and tram drivers - to skilled and routine service workers If workcu_m NE 3 and iscocu_m=8323 clascu_m=3 . /* Skilled and routine production workers If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 6100, 6154) clascu_m=7 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 6100, 6154) clascu_m=8 . If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 7100, 7442) clascu_m=7 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 7100, 7442) clascu_m=8 . If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 8100, 8300) clascu_m=7 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 8100, 8300) clascu_m=8 . If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 8312, 8322) clascu_m=7 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 8312, 8322) clascu_m=8 . If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 8324, 8340) clascu_m=7 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 8324, 8340) clascu_m=8 . /* 2.4 Allocate elementary occupations (ISCO 9000 - 9330 ) to the schema /* Routine service workers If workcu_m NE 3 and range(iscocu_m, 9100, 9152) clascu_m=4 . /* Routine production workers If workcu_m NE 3 and range(iscocu_m, 9153, 9330) clascu_m=8 . Var lab clascu_m "Main earner's class position based on his current job". Val lab clascu_m 1 "Socio-cultural professionals" 2 "Socio-cultural semi-professionals" 3 "Skilled service workers" 4 "Routine serivce workers" 5 "Technical experts" 6 "Technicians" 7 "Skilled production workers" 8 "Routine production workers" 10 "Managers and administrators" 11 "Associate managers and administrators" 12 "Skilled clerks" 13 "Routine clerks" 14 "Liberal professions" 15 "Small business owners" . Missing val clascu_m (-777) . Freq clascu_m . ************************************************************** ************************************************************** /* CONSTRUCTION OF CLASS VARIABLE FOR MAIN EARNER'S CURRENT WORK POSITION /* DATA: SELECTS 1999 /* DANIEL OESCH, MAY 2008 /* 14-Class schema constructed *1 Socio-cultural professionals *2 Socio-cultural semi-professionals *3 Skilled service workers *4 Routine serivce workers *5 Technical experts *6 Technicians *7 Skilled production workers *8 Routine production workers *10 Managers and administrators *11 Associate managers and administrators *12 Skilled clerks *13 Routine clerks *14 Liberal professions *15 Small business owners. /* 1. Recode variables used to construct class variable /* 1.1 Combine information on MAIN EARNER'S CURRENT job from two variables (all ISCO88 4-digit, r's last job) Freq rp232is rp242is. Compute iscocu_m = rp232is. Var lab iscocu_m "Current work position of main earner - isco88 4-digit" . Do If missing (iscocu_m) . compute iscocu_m= rp242is. End if. Freq iscocu_m . cro rp232is by rp242is. /* 1.2 Recode current work position of main earner Freq rp23100 rp24100. Compute workcu_m = rp23100. Var lab workcu_m "Current work position of main earner" . Do If missing (workcu_m) . compute workcu_m=rp24100. End if. Recode workcu_m (9=sysmis) (else=copy) into workcu_m . Val lab workcu_m 1 "Employee" 2 "Senior employee" 3 "Self-employed" . Freq workcu_m . /* 1.3 Education of main earner Freq rp22910 rp23910 . Compute educall_m =rp22910. Var lab educall_m "Unified variable: highest level of education of main earner" . Do If missing (educall_m) . compute educall_m=rp23910. End if. Freq educall_m . Recode educall_m (0 thru 3=1) (4 thru 9=2) (10 thru 12=3) (99=sysmis) into educat_m. Var lab educat_m "Highest level of education of main earner, recoded" . Val lab educat_m 1 "Lower than upper secondary education" 2 "Upper secondary education" 3 "Tertiary education" . Freq educat_m . ************************************* /* 2. Construct class variables /* 2.1 Construct class variable based of main earner's current job Compute clascu_m= -777. /* 2.1 Allocate self-employed to schema If workcu_m=3 and range(iscocu_m, 110, 1239) clascu_m=14 . If workcu_m=3 and range(iscocu_m, 2100, 2470) clascu_m=14 . If workcu_m=3 and range(iscocu_m, 1300, 1320) clascu_m=15 . If workcu_m=3 and range(iscocu_m, 3000, 9400) clascu_m=15 . /* 2.2 Allocate employed managers and professionals (ISCO 1000 - 2470) to the schema If workcu_m NE 3 and range(iscocu_m, 110, 1239) clascu_m=10 . If workcu_m NE 3 and range(iscocu_m, 1300, 1320) clascu_m=11 . If workcu_m NE 3 and range(iscocu_m, 2100, 2213) clascu_m=5 . If workcu_m NE 3 and range(iscocu_m, 2220, 2321) clascu_m=1 . If workcu_m NE 3 and range(iscocu_m, 2330, 2340) clascu_m=2 . If workcu_m NE 3 and range(iscocu_m, 2350, 2359) clascu_m=1 . If workcu_m NE 3 and range(iscocu_m, 2410, 2429) clascu_m=10 . If workcu_m NE 3 and range(iscocu_m, 2430, 2432) clascu_m=2 . If workcu_m NE 3 and iscocu_m=2440 clascu_m=1 . If workcu_m NE 3 and iscocu_m=2441 clascu_m=10 . If workcu_m NE 3 and any(iscocu_m, 2442, 2443) clascu_m=1 . If workcu_m NE 3 and iscocu_m=2444 clascu_m=2 . If workcu_m NE 3 and iscocu_m=2445 clascu_m=1 . If workcu_m NE 3 and range(iscocu_m, 2446, 2450) clascu_m=2 . If workcu_m NE 3 and iscocu_m=2451 clascu_m=1 . If workcu_m NE 3 and range(iscocu_m, 2452, 2455) clascu_m=2 . If workcu_m NE 3 and iscocu_m=2460 clascu_m=1 . If workcu_m NE 3 and iscocu_m=2470 clascu_m=10 . /* 2.3 Allocate employed technicians, associate managers and associate professionals (ISCO 3000) to the schema If workcu_m NE 3 and range(iscocu_m, 3100, 3152) clascu_m=6 . If workcu_m NE 3 and range(iscocu_m, 3210, 3213) clascu_m=6 . If workcu_m NE 3 and range(iscocu_m, 3220, 3224) clascu_m=2 . If workcu_m NE 3 and iscocu_m=3225 clascu_m=3 . If workcu_m NE 3 and iscocu_m=3226 clascu_m=2 . If workcu_m NE 3 and any(iscocu_m, 3227, 3228) clascu_m=3 . If workcu_m NE 3 and range(iscocu_m, 3229, 3340) clascu_m=2 . If workcu_m NE 3 and iscocu_m=3400 clascu_m=11 . If workcu_m NE 3 and range(iscocu_m, 3410, 3433) clascu_m=11 . If workcu_m NE 3 and iscocu_m=3434 clascu_m=6 . If workcu_m NE 3 and range(iscocu_m, 3440, 3450) clascu_m=11 . If workcu_m NE 3 and range(iscocu_m, 3460, 3472) clascu_m=2 . If workcu_m NE 3 and range(iscocu_m, 3473, 3475) clascu_m=3 . If workcu_m NE 3 and iscocu_m=3480 clascu_m=2 . /* Locomotive engine drivers - to technicians If workcu_m NE 3 and iscocu_m=8311 clascu_m=6 . /*Police officers - to associate managers and administrators If workcu_m NE 3 and iscocu_m=5162 clascu_m=11 . /* 2.4 Allocate clerks and workers (ISCO 4000 - 8340 ) to the schema /* correct for skilled (upper secondary education or higher) and unskilled (less than upper secondary education) /* Skilled and routine clerks If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 4000, 4223) clascu_m=12 . If workcu_m NE 3 and educat_m = 1 and range(iscocu_m, 4000, 4223) clascu_m=13 . If workcu_m NE 3 and educat_m NE 1 and any(iscocu_m, 5160, 5169) clascu_m=12 . If workcu_m NE 3 and educat_m=1 and any(iscocu_m, 5160, 5169) clascu_m=13 . If workcu_m NE 3 and any(iscocu_m, 5161, 5163) clascu_m=12 . /*Soldiers - to skilled clerks If workcu_m NE 3 and iscocu_m=100 clascu_m=12 . /* Skilled and routine service workers If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 5100, 5149) clascu_m=3 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 5100, 5149) clascu_m=4 . If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 5200, 5220) clascu_m=3 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 5200, 5220) clascu_m=4 . /* Bus and tram drivers - to skilled and routine service workers If workcu_m NE 3 and iscocu_m=8323 clascu_m=3 . /* Skilled and routine production workers If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 6100, 6154) clascu_m=7 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 6100, 6154) clascu_m=8 . If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 7100, 7442) clascu_m=7 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 7100, 7442) clascu_m=8 . If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 8100, 8300) clascu_m=7 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 8100, 8300) clascu_m=8 . If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 8312, 8322) clascu_m=7 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 8312, 8322) clascu_m=8 . If workcu_m NE 3 and educat_m NE 1 and range(iscocu_m, 8324, 8340) clascu_m=7 . If workcu_m NE 3 and educat_m=1 and range(iscocu_m, 8324, 8340) clascu_m=8 . /* 2.4 Allocate elementary occupations (ISCO 9000 - 9330 ) to the schema /* Routine service workers If workcu_m NE 3 and range(iscocu_m, 9100, 9152) clascu_m=4 . /* Routine production workers If workcu_m NE 3 and range(iscocu_m, 9153, 9330) clascu_m=8 . Var lab clascu_m "Main earner's class position based on his current job". Val lab clascu_m 1 "Socio-cultural professionals" 2 "Socio-cultural semi-professionals" 3 "Skilled service workers" 4 "Routine serivce workers" 5 "Technical experts" 6 "Technicians" 7 "Skilled production workers" 8 "Routine production workers" 10 "Managers and administrators" 11 "Associate managers and administrators" 12 "Skilled clerks" 13 "Routine clerks" 14 "Liberal professions" 15 "Small business owners" . Missing val clascu_m (-777) . Freq clascu_m . ************************************************************** ************************************************************** /* CONSTRUCTION OF CLASS VARIABLE FOR MAIN EARNER'S LAST WORK POSITION /* DATA: SELECTS 1999 /* DANIEL OESCH, MAY 2008 /* 14-Class schema constructed *1 Socio-cultural professionals *2 Socio-cultural semi-professionals *3 Skilled service workers *4 Routine serivce workers *5 Technical experts *6 Technicians *7 Skilled production workers *8 Routine production workers *10 Managers and administrators *11 Associate managers and administrators *12 Skilled clerks *13 Routine clerks *14 Liberal professions *15 Small business owners. /* 1. Recode variables used to construct class variable /* 1.1 Combine information on MAIN EARNER'S LAST job from two variables (all ISCO88 4-digit, r's last job) /*MAIN EARNER Freq rp236is rp246is. Compute iscola_m = rp236is. Var lab iscola_m "Last work position of main earner - isco88 4-digit" . Do If missing (iscola_m) . compute iscola_m=rp246is. End if. Freq iscola_m . /* 1.2 Recode last work position of main earner Freq rp23500 rp24500 . Compute workla_m = rp23500. Var lab workla_m "Last work position of main earner" . Do If missing (workla_m) . compute workla_m=rp24500. End if. Recode workla_m (9=sysmis) (else=copy) into workla_m . Val lab workla_m 1 "Employee" 2 "Senior employee" 3 "Self-employed" . Freq workla_m . /* 1.3 Education of main earner - already recoded in Class_MainEarner_LastJob_Selects07.sps Freq educat_m . ************************************* /* 2. Construct class variables /* 2.1 Construct class variable based of main earner's last job Compute clasla_m= -777. /* 2.1 Allocate self-employed to schema If workla_m=3 and range(iscola_m, 1000, 1239) clasla_m=14 . If workla_m=3 and range(iscola_m, 2100, 2470) clasla_m=14 . If workla_m=3 and range(iscola_m, 1300, 1320) clasla_m=15 . If workla_m=3 and range(iscola_m, 3000, 9400) clasla_m=15 . /* 2.2 Allocate employed managers and professionals (ISCO 1000 - 2470) to the schema If workla_m NE 3 and range(iscola_m, 1000, 1239) clasla_m=10 . If workla_m NE 3 and range(iscola_m, 1300, 1320) clasla_m=11 . If workla_m NE 3 and range(iscola_m, 2100, 2213) clasla_m=5 . If workla_m NE 3 and range(iscola_m, 2220, 2320) clasla_m=1 . If workla_m NE 3 and range(iscola_m, 2330, 2340) clasla_m=2 . If workla_m NE 3 and range(iscola_m, 2350, 2359) clasla_m=1 . If workla_m NE 3 and range(iscola_m, 2410, 2429) clasla_m=10 . If workla_m NE 3 and range(iscola_m, 2430, 2432) clasla_m=2 . If workla_m NE 3 and iscola_m=2440 clasla_m=1 . If workla_m NE 3 and iscola_m=2441 clasla_m=10 . If workla_m NE 3 and any(iscola_m, 2442, 2443) clasla_m=1 . If workla_m NE 3 and iscola_m=2444 clasla_m=2 . If workla_m NE 3 and iscola_m=2445 clasla_m=1 . If workla_m NE 3 and range(iscola_m, 2446, 2450) clasla_m=2 . If workla_m NE 3 and iscola_m=2451 clasla_m=1 . If workla_m NE 3 and range(iscola_m, 2452, 2455) clasla_m=2 . If workla_m NE 3 and iscola_m=2460 clasla_m=1 . If workla_m NE 3 and iscola_m=2470 clasla_m=10 . /* 2.3 Allocate employed technicians, associate managers and associate professionals (ISCO 3000) to the schema If workla_m NE 3 and range(iscola_m, 3100, 3152) clasla_m=6 . If workla_m NE 3 and range(iscola_m, 3210, 3213) clasla_m=6 . If workla_m NE 3 and range(iscola_m, 3220, 3224) clasla_m=2 . If workla_m NE 3 and iscola_m=3225 clasla_m=3 . If workla_m NE 3 and iscola_m=3226 clasla_m=2 . If workla_m NE 3 and any(iscola_m, 3227, 3228) clasla_m=3 . If workla_m NE 3 and range(iscola_m, 3229, 3340) clasla_m=2 . If workla_m NE 3 and iscola_m=3400 clasla_m=11 . If workla_m NE 3 and range(iscola_m, 3410, 3433) clasla_m=11 . If workla_m NE 3 and iscola_m=3434 clasla_m=6 . If workla_m NE 3 and range(iscola_m, 3440, 3450) clasla_m=11 . If workla_m NE 3 and range(iscola_m, 3460, 3472) clasla_m=2 . If workla_m NE 3 and range(iscola_m, 3473, 3475) clasla_m=3 . If workla_m NE 3 and iscola_m=3480 clasla_m=2 . /* Locomotive engine drivers - to technicians If workla_m NE 3 and iscola_m=8311 clasla_m=6 . /*Police officers - to associate managers and administrators If workla_m NE 3 and iscola_m=5162 clasla_m=11 . /* 2.4 Allocate clerks and workers (ISCO 4000 - 8340 ) to the schema /* correct for skilled (upper secondary education or higher) and unskilled (less than upper secondary education) /* Skilled and routine clerks If workla_m NE 3 and educat_m NE 1 and range(iscola_m, 4000, 4223) clasla_m=12 . If workla_m NE 3 and educat_m = 1 and range(iscola_m, 4000, 4223) clasla_m=13 . If workla_m NE 3 and educat_m NE 1 and any(iscola_m, 5160, 5169) clasla_m=12 . If workla_m NE 3 and educat_m=1 and any(iscola_m, 5160, 5169) clasla_m=13 . If workla_m NE 3 and any(iscola_m, 5161, 5163) clasla_m=12 . /*Soldiers - to skilled clerks If workla_m NE 3 and iscola_m=100 clasla_m=12 . /* Skilled and routine service workers If workla_m NE 3 and educat_m NE 1 and range(iscola_m, 5100, 5149) clasla_m=3 . If workla_m NE 3 and educat_m=1 and range(iscola_m, 5100, 5149) clasla_m=4 . If workla_m NE 3 and educat_m NE 1 and range(iscola_m, 5200, 5220) clasla_m=3 . If workla_m NE 3 and educat_m=1 and range(iscola_m, 5200, 5220) clasla_m=4 . /* Bus and tram drivers - to skilled and routine service workers If workla_m NE 3 and iscola_m=8323 clasla_m=3 . /* Skilled and routine production workers If workla_m NE 3 and educat_m NE 1 and range(iscola_m, 6100, 6154) clasla_m=7 . If workla_m NE 3 and educat_m=1 and range(iscola_m, 6100, 6154) clasla_m=8 . If workla_m NE 3 and educat_m NE 1 and range(iscola_m, 7100, 7442) clasla_m=7 . If workla_m NE 3 and educat_m=1 and range(iscola_m, 7100, 7442) clasla_m=8 . If workla_m NE 3 and educat_m NE 1 and range(iscola_m, 8100, 8300) clasla_m=7 . If workla_m NE 3 and educat_m=1 and range(iscola_m, 8100, 8300) clasla_m=8 . If workla_m NE 3 and educat_m NE 1 and range(iscola_m, 8312, 8322) clasla_m=7 . If workla_m NE 3 and educat_m=1 and range(iscola_m, 8312, 8322) clasla_m=8 . If workla_m NE 3 and educat_m NE 1 and range(iscola_m, 8324, 8340) clasla_m=7 . If workla_m NE 3 and educat_m=1 and range(iscola_m, 8324, 8340) clasla_m=8 . /* 2.5 Allocate elementary occupations (ISCO 9000 - 9330 ) to the schema /* Routine service workers If workla_m NE 3 and range(iscola_m, 9100, 9152) clasla_m=4 . /* Routine production workers If workla_m NE 3 and range(iscola_m, 9153, 9330) clasla_m=8 . Var lab clasla_m "Main earner's class position based on his last job". Val lab clasla_m 1 "Socio-cultural professionals" 2 "Socio-cultural semi-professionals" 3 "Skilled service workers" 4 "Routine serivce workers" 5 "Technical experts" 6 "Technicians" 7 "Skilled production workers" 8 "Routine production workers" 10 "Managers and administrators" 11 "Associate managers and administrators" 12 "Skilled clerks" 13 "Routine clerks" 14 "Liberal professions" 15 "Small business owners" . Missing val clasla_m (-777) . Freq clasla_m. ************************************************************** ************************************************************** /* MERGING OF DIFFERENT CLASS VARIABLES INTO ONE SINGLE CLASS VARIALBES /* DATA: SELECTS 1999 /* DANIEL OESCH, MAY 2008 /* Combine information on individuals' class position from 6 variables: /* Class based on respondent's current job (clascu_r) /* Class based on respondent's last job (clasla_r) /* Class based on partner's current job (clascu_p) /* Class based on partner's last job (clasla_p) /* Class based on main earner's current job (clascu_m) /* Class based on main earner's last job (clasla_m) Cro clascu_r by clasla_r . Cro clascu_p by clasla_p . Cro clascu_m by clasla_m . /* 1. Dominance order: r's current job > r's last job > p's current job > p's last job > m's current job > m's last job /* 1.1 Merge six class variables (r's current, r's last, p's current, p's last, m-e's current, m-e's last) into a detailled 14-class variable Compute clas14_x = clascu_r. Do If missing (clas14_x) . compute clas14_x=clasla_r. End if. Do If missing (clas14_x) . compute clas14_x=clascu_p. End if. Do If missing (clas14_x) . compute clas14_x=clasla_p. End if. Do If missing (clas14_x) . compute clas14_x=clascu_m. End if. Do If missing (clas14_x) . compute clas14_x=clasla_m. End if. Var lab clas14_x "Class position based on r's, p's or m-e's class, 14 classes" . Val lab clas14_x 1 "Socio-cultural professionals" 2 "Socio-cultural semi-professionals" 3 "Skilled service workers" 4 "Routine serivce workers" 5 "Technical experts" 6 "Technicians" 7 "Skilled production workers" 8 "Routine production workers" 10 "Managers and administrators" 11 "Associate managers and administrators" 12 "Skilled clerks" 13 "Routine clerks" 14 "Liberal professions" 15 "Small business owners" . Missing val clas14_x (-777) . Freq clas14_x. /* 2. Create simplified version of the detailled 14-class variable: 8-class schema and 6-class schema /* 2.1 Class variable class8_x emphasizing horizontal differences Recode clas14_x (1 thru 2=1) (3 thru 4=2) (5 thru 6=3) (7 thru 8=4) (10 thru 11=5) (12 thru 13=6) (14=7) (15=8) into clas8_x . Var lab clas8_x "Class position based on r's, p's or m-e's class, 8 classes" . Val lab clas8_x 1 "Socio-cultural specialists" 2 "Service workers" 3 "Technical specialists" 4 "Production workers" 5 "Managers and administrators" 6 "Clerks" 7 "Liberal professions" 8 "Small business owners" . Freq clas8_x. /* 2.2 Class variable class6_x emphasizing vertical differences Recode clas14_x (1,5,10=1) (2, 6, 11=2) (3, 7, 12=3) (4,8,13=4) (14=5) (15=6) into clas6_x . Var lab clas6_x "Class position based on r's, p's or m-e's class, 6 classes" . Val lab clas6_x 1 "Professionals and managers" 2 "Semi-professionals and associate managers" 3 "Skilled workers" 4 "Routine workers" 5 "Liberal professions" 6 "Small business owners" . Freq clas6_x. /* 2.3 Class variable clas6_y emphasizing horizontal and vertical differences Recode clas14_x (1,2=1) (3,7,12=5) (4,8,13=6) (5,6=2) (10,11,14=3) (15=4) into clas6_y. Var lab clas6_y "Class position based on r's, p's or m-e's class, 6 classes - version y" . Val lab clas6_y 1 "Socio-cultural specialists" 2 "Technical specialists" 3 "Managers, liberal professions and large employers" 4 "Small business owners" 5 "Skilled workers" 6 "Unskilled workers" . Freq clas6_y.