This do-file generates variables used in the SMH paper. The original data set ("gss0610") is an appended file of GSS 2006 and GSS 2010.
// Task: generate variables // Project: insecurity in context ****************************************** *** 0. Program setup ****************************************** version 11.2 set linesize 80 set maxvar 10000 clear all macro drop _all ****************************************** *** 1. Open the data set ****************************************** use "gss0610.dta" ****************************************** *** 2. Job insecurity and outcomes ****************************************** gen jobinsecurity = 5 - joblose label var jobinsecurity "job insecurity, continuous" gen generalhappy = 4 - happy label var generalhappy "happiness, 3 best" ****************************************** *** 3. Predictors ****************************************** // education recode degree (0/1 = 1) (2 = 2) (3/4 = 3), gen(edu) label var edu "3-category education: <= HS, some college, >= college" label define edu1 1 "1 High school or less" 2 "2 Some college" 3 "3 College or more" label values edu edu1 gen hs = (edu == 1) if edu < . label var hs "high school or less" label define hs1 1 "1 high school or less" 0 "0 more than high school" label values hs hs1 gen somecg = (edu == 2) if edu < . label var somecg "some college" label define somecg1 1 "1 some college" 0 "0 high school or less, or college or more" label values somecg somecg1 gen cg = (edu == 3) if edu < . label var cg "college or more" label define cg1 1 "1 college or more" 0 "0 less than college" label values cg cg1 // income recode rincom06 (1 = 500) (2 = 2000) (3 = 3500) (4 = 4500) (5 = 5500) (6 = 6500) (7 = 7500) (8 = 9000) (9 = 11250) (10 = 13750) (11 = 16250) (12 = 18750) (13 = 21250) (14 = 23750) (15 = 27500) (16 = 32500) (17 = 37500) (18 = 45000) (19 = 55000) (20 = 67500) (21 = 82500) (22 = 100000) (23 = 120000) (24 = 140000) (25 = 200000), gen(incomerec) label var incomerec "personal income, recoded using mid-point" gen logincome = log(incomerec) label var logincome "logged personal income" // class gen middleclass = . replace middleclass = 1 if (class == 3 | class == 4) replace middleclass = 0 if (class == 1 | class == 2) label var middleclass "middle class" gen workingclass = . replace workingclass = 1 if (class == 1 | class == 2) replace workingclass = 2 if (class == 3 | class == 4) label var workingclass "workingclass, 1/2" gen workingclassd = (workingclass == 1) if workingclass < . label var workingclassd "workingclass, 0/1" ****************************************** *** 4. Covariates ****************************************** gen agesq = age^2 label var agesq "age squared" gen female = sex - 1 label var female "female" label define female1 1 "1 Female" 0 "0 Male" label values female female1 gen black = . replace black = 1 if race == 2 replace black = 0 if (race == 1 | race == 3) label var black "Black" label define black1 1 "1 Black" 0 "0 Non-black" label values black black1 gen selfemployed = 2 - wrkslf label var selfemployed "self-employed" label define selfemployed1 1 "1 Self-employed" 0 "0 Work for somebody" label values selfemployed selfemployed1 gen PT = (wrkstat == 2) if wrkstat < . label var PT "working part-time" label define PT1 1 "1 Working part-time" 0 "0 Working fulltime or temp not working" label values PT PT1 gen married = (marital == 1) if marital < . label var married "married" label define married1 1 "1 Married" 0 "0 Not married" label values married married1 gen divorced = (marital == 3 | marital == 4) if marital < . label var divorced "divorced/separated" label define divorced1 1 "1 Divorced/Separated" 0 "0 Not divorced/separated" label values divorced divorced1 gen widow = (marital == 2) if marital < . label var widow "widowed" label define widow1 1 "1 Widowed" 0 "0 Not widowed" label values widow widow1 gen nvmarried = (marital == 5) if marital < . label var nvmarried "never married" label define nvmarried1 1 "1 Never married" 0 "0 Not never married" label values nvmarried nvmarried1 gen year2006 = (year == 2006) if year < . label var year2006 "surveyed in 2006" gen year2010 = (year == 2010) if year < . label var year2010 "surveyed in 2010" ****************************************** *** 5. Save data set ****************************************** save "2013-05-11 vars generated.dta"