-
Notifications
You must be signed in to change notification settings - Fork 0
/
2_data.do
150 lines (104 loc) · 4.44 KB
/
2_data.do
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Handbook of Quantitative Methods in Sociology
Chapter: Introduction to sociogenomics
Application of GXE using HRS
Authors: Gaia Ghirardi, Selin Köksal, Fabrizio Bernardi, Nicola Barban
Date: October 2024
Topic dofile: Data preparation
--------------------------------------------------------------------------------
------------------------------------------------------------------------------*/
clear all
set more off, perm
set cformat %9.2f
clear matrix
clear mata
set maxvar 32000
u "$dataset_working/data.dta", clear
********************************************************************************
* Controls
********************************************************************************
* Year of birth
fre rabyear
* Gender
fre ragender
recode ragender (2=0 "Female") (1=1 "Male"), gen(rsex)
* PCs
sum PC*
********************************************************************************
* Outcomes
********************************************************************************
* Years of education
fre raedyrs
recode raedyrs (0/8 = 8)
* Degree
fre DEGREE
#delimit ;
lab define DEGREE 0 "No degree" 1 "GED" 2 "High school diploma"
3 "Two year college degree" 4 "Four year college degree"
5 "Master degree" 6 "Professional degree (Ph.D., M.D., J.D.)"
9 "Degree unknown/Some College"
;
#delimit cr
lab value DEGREE DEGREE
* graduate school completion
recode DEGREE (0/4=0 "No") (5/6=1 "Yes"), gen(grad_d)
replace grad_d=0 if DEGREE==9
lab var grad_d "At least graduate school completion"
********************************************************************************
* Family's SES
********************************************************************************
* Mother and father's education
fre rafeduc FAEDUC
fre rameduc MOEDUC
* Average and highest educational level among parents
egen peduH = rowmax(rafeduc rameduc)
egen peduA = rowmean(rafeduc rameduc)
* ---------------------------------------------------------------------------- *
* Variables for composite index
* ---------------------------------------------------------------------------- *
* 1) Parental education (coded based on years of reported education as <12, 12-15, or 16+
recode rafeduc (0/11=0 "Low") (12/15=1 "Medium") (16/17=2 "High"), gen(fedu3)
recode rameduc (0/11=0 "Low") (12/15=1 "Medium") (16/17=2 "High"), gen(medu3)
* 2) Father's occupation (coded as manual, professional, or management)
fre FJOB
#delimit ;
lab define FJOB 1 "MANAGERIAL/PROFESSIONAL" 2 "SALES" 3 "CLERICAL"
4 "SERVICE" 5 "MANUAL/OPERATORS" 6 "ARMED FORCES"
8 "DK (Don't Know)" 9 "NA (Not Ascertained)"
;
#delimit cr
lab value FJOB FJOB
recode FJOB (4/5 2 =0 "Low") (3 6 = 1 "Medium") (1=2 "High") (8/9 = .), gen(focc3)
* 3) Perceptions of the families socioeconomic circumstances (well-off, average, or poor or variable)
fre FAMFIN
#delimit ;
lab define FAMFIN 1 "PRETTY WELL OFF FINANCIALLY" 3 "ABOUT AVERAGE"
5 "POOR" 6 "IT VARIED (VOL)"
8 "DK (Don't Know); NA (Not Ascertained)"
9 "RF (Refused)"
;
#delimit cr
lab value FAMFIN FAMFIN
recode FAMFIN (5 6 =0 "Low") (3 = 1 "Medium") (1=2 "High") (8/9 = .), gen(fampses)
* 4) Count of number of hardships the family experienced:
fre FMFINH MOVFIN FAUNEM
recode FMFINH (1 = 1 "YES") (5 = 0 "NO") (8/9 = .), gen(fhelp)
recode MOVFIN (1 = 1 "YES") (5 = 0 "NO") (8/9 = .), gen(mov)
recode FAUNEM (1 = 1 "YES") (5 6 7 = 0 "NO") (8/9 = .), gen(funemp)
recode FAUNEM (7 = 1 "YES") (1 5 6 = 0 "NO") (8/9 = .), gen(nofather)
lab var nofather "Father absent from the home"
sort hhidpn
egen nhards = rowtotal(fhelp mov funemp nofather)
recode nhards (2/3 = 0 "2 or more hardships") (1 = 1 "1 hardships") (0 = 2 "No hardships"), gen(nhards3)
* 5) SES composite index
polychoricpca medu3 fedu3 focc3 fampses nhards3, score(SES) nscore(1)
rename SES1 SES
lab var SES "SES continuous - 3"
egen SES_2 = xtile (SES), n(2)
egen SES_3 = xtile (SES), n(3)
********************************************************************************
* Main independent variable: PGS education
********************************************************************************
rename E4_EA3_W23_SSGAC18 pgsedu
save "$dataset_working/data_vars.dta", replace