* Encoding: windows-1252. * ==================================================================================================. * EU-SILC Cross 2005 - release 2021-04 / DOI: https://doi.org/10.2907/EUSILC2004-2019V.2 * 1st update * * When publishing statistics derived from the EU-SILC UDB, please state as source: * "EU-SILC UDB - version of 2021-04" * * SPSS Command Syntax File * 2005_cross_eu_silc_r_ver_2021_04.sps * * (c) GESIS 2021-11-18 * * PLEASE NOTE * For Differences between data as described in the guidelines * and the anonymised user database as well as country specific anonymisation measures see: * C-2005 DIFFERENCES BETWEEN DATA COLLECTED.doc * * ==================================================================================================. * * EU-SILC - cross - Personal register file: * * * Transforms the EU-SILC CSV-data (as released by Eurostat) into an SPSS-Systemfile * * This version of the EU-SILC has been delivered in form of seperate country files. * The following syntax transforms the raw data into one SPSS file using all available country files. * * Country files are delivered in the format UDB_c*country_stub*.csv * * This SPSS-File is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . * * * Pforr, Klaus and Johanna Jung (2021): 2005_cross_eu_silc_r_ver_2021_04.sps, 1st update. * SPSS-Syntax for transforming EU-SILC csv data into an SPSS-Systemfile. * * https://www.gesis.org/gml/european-microdata/eu-silc/ * * Contact: klaus.pforr@gesis.org ************************************************************************************************************************************. set decimal=DOT. * When using SPSS earlier than V16 you might not use "set unicode" . set unicode=OFF. *----------------------------------------------------------------- Start definition macro ---------------------------------------------------------------. DEFINE !C2005_R (). *-------------------------------------------------------- CONFIGURATION SECTION - Start ------------------------------------------------------. * The following command should contain the complete path where the CSV data files are stored; * 1) Change CSV_PATH to your file path; (E.g. C:\EU-SILC\Crossectional 2004-2016\); * 2) But keep path structure as delivered by Eurostat CSV_PATH/COUNTRY/YEAR . !LET !csv_path ='CSV_PATH' * The following command should contain the complete path where the SPSS data files should be stored; * Change SPSS_PATH to your file path. !LET !spss_path ='SPSS_PATH' * The following command should contain the name of the SPSS data file (specify without .sav extension); * Change SPSS_FILENAME to your final filename. !LET !finalfile='SPSS_FILENAME' *----------------------------------------------------------- CONFIGURATION SECTION - End ---------------------------------------------------------. * There should be probably nothing to change below this line. * ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------. *------------------------------------------------------------- Definition of country stubs -----------------------------------------------------------------------. !LET !CC= 'AT BE CY CZ DE DK EE EL ES FI FR HU IE IS IT LT LU LV NL NO PL SE SI SK UK'. !DO !j !IN (!CC) !IF (!j="EL") !THEN !LET !i="gr" !ELSE !LET !i=!j !IFEND. !IF (!j="PT") !THEN GET DATA /TYPE=TXT /FILE=!QUOTE(!CONCAT(!csv_path,!j,'\2005\UDB_c',!i,'05R.csv')) /ENCODING='Locale' /DELCASE=LINE /DELIMITERS="," /ARRANGEMENT=DELIMITED /FIRSTCASE=2 /IMPORTCASE=ALL /VARIABLES= RB010 F4.0 RB020 A2 RB030 F5.0 RB050 COMMA8.0 RB050_F F1.0 RB070 F1.0 RB070_F F1.0 RB080 F4.0 RB080_F F1.0 RB090 F1.0 RB090_F F1.0 RB200 F1.0 RB200_F F1.0 RB210 F1.0 RB210_F F1.0 RB220 F5.0 RB220_F F2.0 RB230 F5.0 RB230_F F2.0 RB240 F5.0 RB240_F F2.0 RB245 F1.0 RB245_F F1.0 RB250 F2.0 RB250_F F2.0 RB260 F1.0 RB260_F F2.0 RB270 F5.0 RB270_F F2.0 RL010 F2.0 RL010_F F2.0 RL020 F2.0 RL020_F F2.0 RL030 F2.0 RL030_F F2.0 RL040 F2.0 RL040_F F2.0 RL050 F1.0 RL050_F F2.0 RL060 F1.0 RL060_F F2.0 RL070 comma8.0 RL070_F F2.0 RX030 F3.0 RX020 F2.0 RX040 comma9.0 RX010 F2.0.0. variable labels RB010 'Year of the survey' /RB020 'Country' /RB030 'Personal ID' /RB050 'Personal cross-sectional weight' /RB050_f 'Flag' /RB070 'Quarter of Birth' /RB070_f 'Flag' /RB080 'Year of birth' /RB080_f 'Flag' /RB090 'Sex' /RB090_f 'Flag' /RB200 'Residential Status' /RB200_f 'Flag' /RB210 'Basic activity status' /RB210_f 'Flag' /RB220 'Father ID' /RB220_f 'Flag' /RB230 'Mother ID' /RB230_f 'Flag' /RB240 'Spouse/Partner ID' /RB240_f 'Flag' /RB245 'Respondent status' /RB245_f 'Flag' /RB250 'Data status' /RB250_f 'Flag' /RB260 'Type of interview' /RB260_f 'Flag' /RB270 'Personal ID of proxy' /RB270_f 'Flag' /RL010 'Education at pre-school: number of hours of education during an usual week' /RL010_f 'Flag' /RL020 'Education at compulsory school: number of hours of education during an usual week' /RL020_f 'Flag' /RL030 'Childcare at centre-based services: number of hours of child care during an usual week' /RL030_f 'Flag' /RL040 'Childcare at day-care centre: number of hours of child care during an usual week' /RL040_f 'Flag' /RL050 'Child care by a professional child-miner: number of hours of child care during an usual week' /RL050_f 'Flag' /RL060 'Child care by grand-parents;other household members;relatives etc: number of hours during an usual week' /RL060_f 'Flag' /RL070 'Children cross-sectional weight for child care' /RL070_f 'Flag' /RX030 'Household ID' /RX020 'Age at the end of the income reference period' /RX010 'Age at the date of the interview' /RX040 "Work intensity (only PT)" . !ELSE GET DATA /TYPE=TXT /FILE=!QUOTE(!CONCAT(!csv_path,!j,'\2005\UDB_c',!i,'05R.csv')) /ENCODING='Locale' /DELCASE=LINE /DELIMITERS="," /ARRANGEMENT=DELIMITED /FIRSTCASE=2 /IMPORTCASE=ALL /VARIABLES= RB010 F4.0 RB020 A2 RB030 F5.0 RB050 COMMA8.0 RB050_F F1.0 RB070 F1.0 RB070_F F1.0 RB080 F4.0 RB080_F F1.0 RB090 F1.0 RB090_F F1.0 RB200 F1.0 RB200_F F1.0 RB210 F1.0 RB210_F F1.0 RB220 F5.0 RB220_F F2.0 RB230 F5.0 RB230_F F2.0 RB240 F5.0 RB240_F F2.0 RB245 F1.0 RB245_F F1.0 RB250 F2.0 RB250_F F2.0 RB260 F1.0 RB260_F F2.0 RB270 F5.0 RB270_F F2.0 RL010 F2.0 RL010_F F2.0 RL020 F2.0 RL020_F F2.0 RL030 F2.0 RL030_F F2.0 RL040 F2.0 RL040_F F2.0 RL050 F1.0 RL050_F F2.0 RL060 F1.0 RL060_F F2.0 RL070 comma8.0 RL070_F F2.0 RX030 F3.0 RX020 F2.0 RX010 F2.0. variable labels RB010 'Year of the survey' /RB020 'Country' /RB030 'Personal ID' /RB050 'Personal cross-sectional weight' /RB050_f 'Flag' /RB070 'Quarter of Birth' /RB070_f 'Flag' /RB080 'Year of birth' /RB080_f 'Flag' /RB090 'Sex' /RB090_f 'Flag' /RB200 'Residential Status' /RB200_f 'Flag' /RB210 'Basic activity status' /RB210_f 'Flag' /RB220 'Father ID' /RB220_f 'Flag' /RB230 'Mother ID' /RB230_f 'Flag' /RB240 'Spouse/Partner ID' /RB240_f 'Flag' /RB245 'Respondent status' /RB245_f 'Flag' /RB250 'Data status' /RB250_f 'Flag' /RB260 'Type of interview' /RB260_f 'Flag' /RB270 'Personal ID of proxy' /RB270_f 'Flag' /RL010 'Education at pre-school: number of hours of education during an usual week' /RL010_f 'Flag' /RL020 'Education at compulsory school: number of hours of education during an usual week' /RL020_f 'Flag' /RL030 'Childcare at centre-based services: number of hours of child care during an usual week' /RL030_f 'Flag' /RL040 'Childcare at day-care centre: number of hours of child care during an usual week' /RL040_f 'Flag' /RL050 'Child care by a professional child-miner: number of hours of child care during an usual week' /RL050_f 'Flag' /RL060 'Child care by grand-parents;other household members;relatives etc: number of hours during an usual week' /RL060_f 'Flag' /RL070 'Children cross-sectional weight for child care' /RL070_f 'Flag' /RX030 'Household ID' /RX020 'Age at the end of the income reference period' /RX010 'Age at the date of the interview' . !IFEND. value labels RB020 'BE' "Belgique" 'DK' "Danmark" 'DE' "Deutschland" 'GR' "Ellada" 'ES' "Espana" 'FR' "France" 'IE' "Ireland" 'IT' "Italia" 'LU' "Luxembourg" 'NL' "Nederland" 'AT' "Oesterreich" 'PT' "Portugal" 'FI' "Suomi" 'SE' "Sverige" 'UK' "United Kingdom" 'BG' "Bulgaria" 'CY' "Cyprus" 'CZ' "Czech Republic" 'EE' "Estonia" 'HU' "Hungary" 'LV' "Latvia" 'LT' "Lithuania" 'MT' "Malta" 'PL' "Poland" 'RO' "Romania" 'SK' "Slovak Republic" 'SI' "Slovenia" 'IS' "Iceland" 'NO' "Norway" 'Ch' "Switzerland"/ RB050_F 1 'filled'/ RB070 1 'January, February, March' 2 'April, May, June' 3 'July, August, September' 4 'October, November, December'/ RB070_F 1 'filled' -1 'missing'/ RB080 1925 '1925 or before'/ RB080_F 1 'filled' -1 'missing'/ Rb090 1 'Male' 2 'Female'/ RB090_F 1 'filled' -1 'missing'/ RB200 1 'currently living in the household' 2 'temporarily absent'/ RB200_F 1 'filled' -1 'missing'/ RB210 1 'at work' 2 'unemployed' 3 'in retirement or early retirement' 4 'other inactive person'/ RB210_F 1 'filled' -1 'missing'/ RB220_F 1 'filled' -1 'missing' -2 'na(father is not a household member)'/ RB230_F 1 'filled' -1 'missing' -2 'na(mother is not a household member)'/ RB240_F 1 'filled' -1 'missing' -2 'na(spouse/partner is not a household member)'/ RB245 1 'current household member aged 16 and over (all hm aged 16+ interviewed)' 2 'selected respondent (only selected hm aged 16+ interviewed)' 3 'not selected respondent(only selected hm aged 16+ interviewed)' 4 'not eligible person(Hm aged less than 16)'/ RB245_F 1 'filled'/ RB250 11 'information only completed from interview (information or interview completed)' 12 'information only completed from registers(information or interview completed) ' 13 'information completed from both: interview and registers(information or interview completed) ' 14 'information completed from full-record imputation (information or interview completed)' 21 'individual unable to respond and no proxy possible(Interview not completed though contact made)' 22 'failed to return self-completed questionnaire (Interview not completed though contact made)' 23 'refusal to cooperate(Interview not completed though contact made) ' 31 'Individual not contacted because temporarily away and no proxy possible ' 32 'Individual not contacted for other reasons' 33 'information not completed: reason unknown'/ RB250_F 1 'filled' -2 'na (RB245 not = 1,2 or 3)'/ Rb260 1 'face to face interview-PAPI' 2 'face to face interview-CAPI' 3 'CATI, telephone interview' 4 'self-administered by respondent' 5 'proxy interview'/ RB260_F 1 'filled' -1 'missing' -2 'na (RB250 not=11 or 13)'/ RB270_F 1 'filled' -1 'missing' -2 'na (RB260 not=5)'/ RL010_F 1 'filled' -1 'missing' -2 'na (person not admitted to pre-school because of her age)'/ RL020_F 1 'filled' -1 'missing' -2 'na (person is not admitted to compulsory school)'/ RL030_F 1 'filled' -1 'missing' -2 'na (person is neither at pre-school nor at school or is more than twelve years old'/ RL040_F 1 'filled' -1 'missing' -2 'na (person is more than twelve years old)'/ RL050_F 1 'filled' -1 'missing' -2 'na (person is more than twelve years old)'/ RL060_F 1 'filled' -1 'missing' -2 'na (person is more than twelve years old)'/ RL070_F 1 'filled' -2 'na (children born in year N or persons aged more than 12 years old at the 31/12/N-1)'/ RX010 80 '80 or over'/ RX020 80 '80 or over'. SAVE OUTFILE= !QUOTE(!CONCAT(!spss_path,'UDB_c',!j,'05R.sav')). !DOEND. *-------------------------------------------------- Compile and save final file -----------------------------------------------------------------------------------. !LET !firstfile=1. !DO !i !IN (!CC). !IF (!firstfile=1) !THEN GET FILE=!QUOTE(!CONCAT(!spss_path,'UDB_c',!i,'05R.sav')). !LET !firstfile=0. !ELSE ADD FILES FILE=* /FILE=!QUOTE(!CONCAT(!spss_path,'UDB_c',!i,'05R.sav')). !IFEND. !DOEND. SAVE OUTFILE=!QUOTE(!CONCAT(!spss_path,!finalfile,'.sav')). *--------------------------------------------------------Delete single country files -------------------------------------------------------------------------------. !DO !i !IN (!CC). ERASE FILE=!QUOTE(!CONCAT(!spss_path,'UDB_c',!i,'05R.sav')). !DOEND. !ENDDEFINE. *----------------------------------------------------------------- End definition macro ---------------------------------------------------------------. *----------------------------------------------------------------- Invoke macro ---------------------------------------------------------------------------. !C2005_R.