* 2007_panel_eu_silc_r_ver_2021_09.do * * STATA Command Syntax File * Stata 17; * * Transforms the EU-SILC CSV-data (as released by Eurostat) into a Stata systemfile * * EU-SILC Panel 2007 - release 2021-09 / DOI: https://doi.org/10.2907/EUSILC2004-2020V.1 * * When publishing statistics derived from the EU-SILC UDB, please state as source: * "EU-SILC UDB – version of 2021-09" * * Personal register file: * This version of the EU-SILC has been delivered in form of seperate country files. * The following do-file transforms the raw data into a single Stata file using all available country files. * Country files are delivered in the format UDB_l*country_stub*07D.csv * * (c) GESIS 2022-02-09 * * PLEASE NOTE * For Differences between data as described in the guidelines * and the anonymised user database as well as country specific anonymisation measures see: * L-2007 DIFFERENCES BETWEEN DATA COLLECTED.doc * * This Stata-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 (2022): 2007_panel_eu_silc_r_ver_2021_09.do. * Stata-Syntax for transforming EU-SILC csv data into a Stata-Systemfile. * * https://www.gesis.org/gml/european-microdata/eu-silc/ * * Contact: klaus.pforr@gesis.org /* Initialization commands */ clear capture log close set more off set linesize 250 set varabbrev off #delimit ; * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ; * CONFIGURATION SECTION - Start ; * The following command should contain the complete path and * name of the Stata log file. * Change LOG_FILENAME to your filename ; local log_file "LOG_FILENAME" ; * The following command should contain the complete path where the CSV data files are stored * Change CSV_PATH to your file path (e.g.: C:/EU-SILC/Longitudinal 2005-2018) * Use forward slashes and keep path structure as delivered by Eurostat CSV_PATH/COUNTRY/YEAR; global csv_path "CSV_PATH" ; * The following command should contain the complete path and * name of the STATA file, usual file extension "dta". * Change STATA_FILENAME to your final filename ; local stata_file "STATA_FILENAME" ; * CONFIGURATION SECTION - End ; * There should be probably nothing to change below this line ; * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ; * Loop to open and convert csv country files into one dta file ; tempfile temp ; save `temp', emptyok ; foreach CC in AT BE BG CY CZ DK EE EL ES FI FR HU IE IS IT LT LU LV NL NO PL PT SE SI SK UK { ; cd "$csv_path/`CC'/2007" ; if "`CC'"=="EL" {; local CC="gr"; }; import delimited using "UDB_l`CC'07R.csv", case(upper) asdouble clear ; append using `temp', force ; save `temp', replace ; } ; * Countries in data file are sorted in alphanumeric order ; sort RB020 ; log using "`log_file'", replace text ; * drop wrongfully included variable; drop SEL_WGT ; * Definition of variable labels ; label variable RB010 "Year of the survey" ; label variable RB020 "Country" ; label variable RB030 "Personal ID" ; label variable RB040 "Current household ID" ; label variable RB060 "Personal base weight" ; label variable RB060_F "Flag" ; label variable RB062 "Longitudinal weight(two-year duration)" ; label variable RB062_F "Flag" ; label variable RB063 "Longitudinal weight (three-year duration)" ; label variable RB063_F "Flag" ; label variable RB064 "Longitudinal weight (four-year duration, only AT, BE, DK, FR)" ; label variable RB064_F "Flag" ; label variable RB070 "Quarter of birth (NL,SI,UK: no info provided)" ; label variable RB070_F "Flag" ; label variable RB080 "Year of birth" ; label variable RB080_F "Flag" ; label variable RB090 "Sex" ; label variable RB090_F "Flag" ; label variable RB100 "Sample person or co-resident" ; label variable RB100_F "Flag" ; label variable RB110 "Membership status" ; label variable RB110_F "Flag" ; label variable RB120 "Moved to" ; label variable RB120_F "Flag" ; label variable RB140 "Quarter moved out and died (BE:coded in months; NL:info not provided)" ; label variable RB140_F "Flag" ; label variable RB150 "Year moved out and died" ; label variable RB150_F "Flag" ; label variable RB160 "Number of months in household during the income reference period" ; label variable RB160_F "Flag" ; label variable RB170 "Main activity status during the income reference period" ; label variable RB170_F "Flag" ; label variable RB180 "Quarter moved in (BE:coded in months; NL:info not provided)" ; label variable RB180_F "Flag" ; label variable RB190 "Year moved in" ; label variable RB190_F "Flag" ; label variable RB200 "Residential status" ; label variable RB200_F "Flag" ; label variable RB210 "Basic activity status" ; label variable RB210_F "Flag" ; label variable RB220 "Father ID" ; label variable RB220_F "Flag" ; label variable RB230 "Mother ID" ; label variable RB230_F "Flag" ; label variable RB240 "Spouse/Partner ID" ; label variable RB240_F "Flag" ; label variable RB245 "Respondent status" ; label variable RB245_F "Flag" ; label variable RB250 "Data status" ; label variable RB250_F "Flag" ; label variable RB260 "Type of interview" ; label variable RB260_F "Flag" ; label variable RB270 "Personal ID of proxy" ; label variable RB270_F "Flag" ; label variable RX020 "Age at the end of the income reference period" ; label variable RX010 "Age at the date of the interview" ; * Definition of category labels ; label define RB060_F_VALUE_LABELS 1 "filled" ; label define RB062_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "not applicable (no two year trajectory for the individual i.e. individual in 1st wave)" ; label define RB063_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "not applicable (no 3-year trajectory for the individual i.e. individual in 1st or 2nd wave)" ; label define RB064_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "not applicable (no 4-year trajectory for the individual i.e. individual in 1st,2nd or 3rd wave)" ; label define RB070_VALUE_LABELS 1 "January, February, March" 2 "April, May, June" 3 "July, August, September" 4 "October, November, December" ; label define RB070_F_VALUE_LABELS 1 "filled" -1 "missing" ; label define RB080_VALUE_LABELS 1923 "2003: 1923 & before" 1924 "2004: 1924 & before" 1925 "2005: 1925 & before" 1926 "2006: 1926 & before" 1927 "2007: 1927 & before" ; label define RB080_F_VALUE_LABELS 1 "filled" -1 "missing" ; label define RB090_VALUE_LABELS 1 "Male" 2 "Female" ; label define RB090_F_VALUE_LABELS 1 "filled" -1 "missing" ; label define RB100_VALUE_LABELS 1 "sample person" 2 "co-resident" ; label define RB100_F_VALUE_LABELS 1 "filled" -1 "missing" ; label define RB110_VALUE_LABELS 1 "was in hh in previous waves or current hh member" 2 "moved into hh from another sample hh since previous wave" 3 "moved into hh from outside sample since previous wave" 4 "newly born hh since last wave" 5 "moved out since previous wave if not contacted in previous wave)" 6 "died" 7 "lived in hh at least 3 months during the income ref. period, not record. in register of this hh" ; label define RB110_F_VALUE_LABELS 1 "filled" -1 "missing" ; label define RB120_VALUE_LABELS 1 "to a private household in the country" 2 "to a collective household or institution in the country" 3 "abroad" 4 "lost" ; label define RB120_F_VALUE_LABELS 1 "filled" -2 "na (RB110 not=5)" ; label define RB140_VALUE_LABELS 1 "January, February, March" 2 "April, May, June" 3 "July, August, September" 4 "October, November, December" ; label define RB140_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "na(RB110 not=5 or 6)" ; label define RB150_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "na (RB110 not =5 or 6)" ; label define RB160_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "na (RB110 not = 5 or 6 or 7)" ; label define RB170_VALUE_LABELS 1 "at work" 2 "unemployed" 3 "in retirement or early retirement" 4 "other inactive person" ; label define RB170_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "na (RB110 not = 5 or 6 or 7)" ; label define RB180_VALUE_LABELS 1 "January, February, March" 2 "April, May, June" 3 "July, August, September" 4 "October, November, December" ; label define RB180_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "na (RB110 not = 3)" ; label define RB190_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "na (RB110 not = 3)" ; label define RB200_VALUE_LABELS 1 "currently living in the household" 2 "temporarily absent" ; label define RB200_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "na(RB110 not 1,2,3 or 4)" ; label define RB210_VALUE_LABELS 1 "at work" 2 "unemployment" 3 "in retirement or early retirement" 4 "other inactive person" ; label define RB210_F_VALUE_LABELS 1 "filled" -1 "missing " -2 "na(RB110 not 1,2,3 or 4)" ; label define RB220_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "na(father is not a household member) or (RB110 not 1,2,3 or 4)" ; label define RB230_F_VALUE_LABELS 1 "filled" -1 "missing " -2 "na(mother is not a household member) or (RB110 not 1,2,3 or 4)" ; label define RB240_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "na(spouse partner is not a household member) or (RB110 not 1,2,3 or 4)" ; label define RB245_VALUE_LABELS 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)" ; label define RB245_F_VALUE_LABELS 1 "filled " -2 "na(RB110 not =1,2,3 or 4)" ; label define RB250_VALUE_LABELS 11 "information only completed from interview (information interview completed) " 12 "information only completed from registers (information interview completed)" 13 "information completed from both: interview & registers (information interview completed)" 14 "information completed from full-record imputation (information interview completed)" 21 "unable to respond (illness, etc) 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 "no contact because person temporarily away and no proxy possible" 32 "no contact for other reasons" 33 "information not completed: reason unknown" ; label define RB250_F_VALUE_LABELS 1 "filled" -2 "na (RB245 not = 1,2 or 3)" ; label define RB260_VALUE_LABELS 1 "face to face interview-PAPI" 2 "face to face interview-CAPI" 3 "CATI, telephone interview" 4 "self-administered by respondent" 5 "proxy interview" ; label define RB260_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "na (RB250 not=11 or 13)" ; label define RB270_F_VALUE_LABELS 1 "filled" -1 "missing" -2 "na (RB260 not=5)" ; label define RX020_VALUE_LABELS -1 "born between the end of income reference period and the data collection" ; * Attachment of category labels to variable ; label values RB060_F RB060_F_VALUE_LABELS ; label values RB062_F RB062_F_VALUE_LABELS ; label values RB063_F RB063_F_VALUE_LABELS ; label values RB064_F RB064_F_VALUE_LABELS ; label values RB070 RB070_VALUE_LABELS ; label values RB070_F RB070_F_VALUE_LABELS ; label values RB080 RB080_VALUE_LABELS ; label values RB080_F RB080_F_VALUE_LABELS ; label values RB090 RB090_VALUE_LABELS ; label values RB090_F RB090_F_VALUE_LABELS ; label values RB100 RB100_VALUE_LABELS ; label values RB100_F RB100_F_VALUE_LABELS ; label values RB110 RB110_VALUE_LABELS ; label values RB110_F RB110_F_VALUE_LABELS ; label values RB120 RB120_VALUE_LABELS ; label values RB120_F RB120_F_VALUE_LABELS ; label values RB140 RB140_VALUE_LABELS ; label values RB140_F RB140_F_VALUE_LABELS ; label values RB150_F RB150_F_VALUE_LABELS ; label values RB160_F RB160_F_VALUE_LABELS ; label values RB170 RB170_VALUE_LABELS ; label values RB170_F RB170_F_VALUE_LABELS ; label values RB180 RB180_VALUE_LABELS ; label values RB180_F RB180_F_VALUE_LABELS ; label values RB190_F RB190_F_VALUE_LABELS ; label values RB200 RB200_VALUE_LABELS ; label values RB200_F RB200_F_VALUE_LABELS ; label values RB210 RB210_VALUE_LABELS ; label values RB210_F RB210_F_VALUE_LABELS ; label values RB220_F RB220_F_VALUE_LABELS ; label values RB230_F RB230_F_VALUE_LABELS ; label values RB240_F RB240_F_VALUE_LABELS ; label values RB245 RB245_VALUE_LABELS ; label values RB245_F RB245_F_VALUE_LABELS ; label values RB250 RB250_VALUE_LABELS ; label values RB250_F RB250_F_VALUE_LABELS ; label values RB260 RB260_VALUE_LABELS ; label values RB260_F RB260_F_VALUE_LABELS ; label values RB270_F RB270_F_VALUE_LABELS ; label values RX020 RX020_VALUE_LABELS ; label data "Personal Register file 2007" ; compress ; save "`stata_file'", replace ; log close ; set more on #delimit cr