#delimit ; cd c:\ErikMain\lifecycle_consumption; clear; set mem 500m ; use "c:\ErikMain\lifecycle_consumption\psid_food_appendix_figures.dta", clear; /* Note - the files used to create this data are food in "C:\ErikMain\lifecycle\psid" ... see merge_data_77_92.do */; gen ln_food = ln(food); gen ln_foodin = ln(food_in); gen married = mstat == 1; gen married_2 = 1; replace married_2 = 2 if married == 1; gen ln_hw = ln(hw); gen dum_hw = hw == 0; gen age_sq = age^2; gen age_cube = age^3; gen age_quart = age^4; gen age_quin = age^5; gen h_working = h_emp == 1; gen w_working = w_emp == 1; gen child_under5 = child_1_2 + child_3_5; gen child_14_up = female_14_17 + male_14_17 + female_18_20 + male_18_20 + female_21_29 + male_21_29; gen age_3 = 3*int(age/3); #delimit ; tsset id year; quietly tab age if age>=25 & age<=70, gen(age_cat); drop age_cat1; #delimit ; quietly tab age if age>=45 & age<=70, gen(age2_cat); drop age2_cat1; #delimit ; gen hours_h_p1 = f.h_wkhrs ; gen hours_w_p1 = f.w_wkhrs ; #delimit ; gen lnhours_h_p1 = ln(hours_h_p1); gen lnhours_w_p1 = ln(hours_w_p1); #delimit ; gen birth_year=year-age; gen cohort=.; replace cohort = 1 if birth_year >=1926 & birth_year <= 1929; replace cohort = 2 if birth_year >=1930 & birth_year <= 1933; replace cohort = 3 if birth_year >=1934 & birth_year <= 1937; replace cohort = 4 if birth_year >=1938 & birth_year <= 1941; replace cohort = 5 if birth_year >=1942 & birth_year <= 1945; replace cohort = 6 if birth_year >=1946 & birth_year <= 1949; replace cohort = 7 if birth_year >=1950 & birth_year <= 1953; replace cohort = 8 if birth_year >=1954 & birth_year <= 1957; replace cohort = 9 if birth_year >=1958 & birth_year <= 1961; replace cohort = 10 if birth_year >=1962 & birth_year <= 1965; replace cohort = 11 if birth_year >=1966 & birth_year <= 1969; #delimit ; gen age_25 = age >=25 & age < 30; gen age_30 = age >=30 & age < 35; gen age_35 = age >=35 & age < 40; gen age_40 = age >=40 & age < 45; gen age_45 = age >=45 & age < 50; gen age_50 = age >=50 & age < 55; gen age_55 = age >=55 & age < 60; gen age_60 = age >=60 & age < 65; gen age_65 = age >=65 & age < 70; #delimit ; quietly tab cohort, gen(cohort_cat); drop cohort_cat1; egen hworking_sd = sd(h_working) if year >=1980 & year <= 1992, by(id); egen wworking_sd = sd(w_working) if year >=1980 & year <= 1992, by(id); egen mstat_sd2 = sd(mstat) if year >=1980 & year <= 1992, by(id); #delimit ; gen food2 = food * 12 ; gen ln_food2 = ln(food2); /* Appendix Tables on PSID Food Expenditures: Fixed Effects vs. Cohort Dummies */ ; #delimit ; xi: reg ln_food2 age_cat* i.fsize i.sex married cohort_cat* [aw = weight] if age >=25 & age <= 70 & fsize <= 7 & year >= 1980 & year <= 1992 & food2 < 20000 & id < 5000000, ; #delimit ; xi: areg ln_food2 age_cat* i.fsize i.sex married [aw = weight] if age >=25 & age <= 70 & fsize <= 7 & year >= 1980 & year <= 1992 & food2 < 20000 & id < 5000000 , absorb(id); /* Appendix Tables on PSID Food Expenditures with and without age of children controls */ ; #delimit ; xi: areg ln_food2 age_cat* i.fsize i.sex child_1_2 child_3_5 child_6_13 female_14_17 male_14_17 female_18_20 male_18_20 female_21_29 male_21_29 married [aw = weight] if age >=25 & age <= 70 & fsize <= 7 & year >= 1980 & year <= 1992 & food2 < 20000 & id < 5000000 , absorb(id); #delimit ; xi: areg ln_food2 age_cat* i.fsize i.sex married [aw = weight] if age >=25 & age <= 70 & fsize <= 7 & year >= 1980 & year <= 1992 & food2 < 20000 & id < 5000000 , absorb(id); /* Appendix Tables on PSID Food Expenditure for those continuously working */ ; #delimit ; xi: areg ln_food2 age_cat* i.fsize i.sex lnhours_h_p1 lnhours_w_p1 [aw = weight] if age >=25 & age <= 64 & fsize <= 7 & year >= 1980 & year <= 1992 & food2 < 20000 & id < 5000000 & mstat == 1 & sex == 1 & mstat_sd2 == 0 & hworking_sd == 0 & wworking_sd ==0 & hours_h_p1 >= 1900 & hours_w_p1 >= 1900 , absorb(id); #delimit ; xi: areg ln_food2 age_cat* i.fsize i.sex married [aw = weight] if age >=25 & age <= 64 & fsize <= 7 & year >= 1980 & year <= 1992 & food2 < 20000 & id < 5000000 & mstat == 1 & sex == 1 , absorb(id); #delimit ; xi: areg ln_food2 age_cat* i.fsize i.sex married [aw = weight] if age >=25 & age <= 64 & fsize <= 7 & year >= 1980 & year <= 1992 & food2 < 20000 & id < 5000000 , absorb(id); /* Appendix Table on PSID Food Expenditure for those continuously working - five year age dummies */ ; #delimit ; xi: areg ln_food2 i.fsize i.sex lnhours_h_p1 lnhours_w_p1 age_30 age_35 age_40 age_45 age_50 age_55 age_60 [aw = weight] if age >=25 & age <= 64 & fsize <= 7 & year >= 1980 & year <= 1992 & food2 < 20000 & id < 5000000 & mstat == 1 & sex == 1 & mstat_sd2 == 0 & hworking_sd == 0 & wworking_sd ==0 & hours_h_p1 >= 1900 & w_working == 0, absorb(id); test age_45 = age_60; #delimit ; xi: areg ln_food2 i.fsize i.sex lnhours_h_p1 lnhours_w_p1 age_30 age_35 age_40 age_45 age_50 age_55 age_60 [aw = weight] if age >=25 & age <= 64 & fsize <= 7 & year >= 1980 & year <= 1992 & food2 < 20000 & id < 5000000 & mstat == 1 & sex == 1 & mstat_sd2 == 0 & hworking_sd == 0 & wworking_sd ==0 & hours_h_p1 >= 1900 & hours_w_p1 >= 1900 , absorb(id); test age_45 = age_60; #delimit ; xi: areg ln_food2 i.fsize i.sex married age_30 age_35 age_40 age_45 age_50 age_55 age_60 [aw = weight] if age >=25 & age <= 64 & fsize <= 7 & year >= 1980 & year <= 1992 & food2 < 20000 & id < 5000000 & mstat == 1 & sex == 1 , absorb(id); test age_45 = age_60; #delimit ; xi: areg ln_food2 i.fsize i.sex married age_30 age_35 age_40 age_45 age_50 age_55 age_60 [aw = weight] if age >=25 & age <= 64 & fsize <= 7 & year >= 1980 & year <= 1992 & food2 < 20000 & id < 5000000 , absorb(id); test age_45 = age_60;