
bhps_ukhls netuse netpuse indpxus_lw strata psu using indresp, ukhlswaves(1/5) ///
ukhlsdir("C:\data\UKDA-6614-stata11_se\stata11_se\") ///
vallabcheck
// Generate variable of interest
generate internetuse = .
replace internetuse = netuse if inlist(wave, 19, 20)
label define internetuse 1 "no access at home, at work or elsewhere" ///
2 "never use" ///
3 "less than once a month" ///
4 "once a month" ///
5 "several times a month" ///
6 "several times a week" ///
7 "every day" ///
-1 "don't know" ///
-2 "refused" ///
-7 "proxy" ///
-9 "missing", modify
label val internetuse internetuse
replace internetuse = 8 - netpuse if inlist(wave, 21, 22, 23) & netpuse > 0
replace internetuse = netpuse if inlist(wave, 21, 22, 23) & netpuse < 0
recode internetuse (-1 = .a) (-2 = .b) (-7 = .c) (-9 = .d)
generate dailyuser = (internetuse == 7) if !missing(internetuse)
// Look at unweighted data
tab dailyuser wave, mis col nof
// Declare weights
svyset psu [pweight=indpxus_lw], strata(strata)
// Calculate weighted results
proportion dailyuser, over(wave)
// Save results in matrix
matrix coefs = r(table)
// Make data set of findings
clear
svmat coefs, names(eqcol)
// Get rid of unnecessary columns and rows
drop _prop_1*
keep in 1/6
drop in 2/4
// Get data into proper shape
gen varid = _n
reshape long _prop_2, i(varid) j(wave)
replace _prop_2 = _prop_2 * 100
reshape wide _prop_2, i(wave) j(varid)
rename _prop_21 dailyusers
rename _prop_22 lb
rename _prop_23 ub
label define wave 19 "2009/10" ///
20 "2010/11" ///
21 "2011/12" ///
22 "2012/13" ///
23 "2013/14"
label val wave wave
twoway (rarea lb ub wave) ///
(line dailyusers wave) ///
, legend(off) xlabel(, val) ///
ytitle("% daily internet users") ///
xtitle("") ylabel(, grid) ///
note(" " ///
"{it:Note:} Gray area denotes 95% confidence bands. {it:Source:} UKHLS waves 1-5, weighted data.", span)