use pspwght happy gndr agea if inrange(agea, 15, 86) using ESS1-6e01_1_F1.dta, clear
// Create gender variable
generate female = (gndr == 2) if !missing(gndr)
label define female 0 "Men" 1 "Women"
label val female female
// Fit model
regress happy i.agea##i.female [pweight = pspwght]
// Calculate means and confidence intervals
margins, over(agea female)
// Plot means and confidence intervals
marginsplot, recastci(rarea) ciopts(color(gs12)) recast(line) ylabel(, format(%6.1f)) ///
xtitle("Age") ytitle("Average happiness") ///
title("Happiness over the life course") ///
legend(pos(2) ring(0)) xlabel(15 (10) 86) ///
plot1opts(lpattern(dash)) plot2opts(lpattern(solid)) ///
note(" " "{it:Source:} European Social Survey, rounds 1{c 150}6, weighted data" ///
"{it:Note:} Gray areas denote 95% confidence intervals", span)
May 8, 2016
Random graphs (81): Plot average and confidence interval for each value of other variable
Labels:
European Social Survey,
margins,
marginsplot,
Random graphs,
weight
