// Creates w_cgwri1_dv w_cgwri2_dv w_cgwri3_dv w_cgwri4_dv w_cgwri_dv w_cgivwri1_dv w_cgwrd_dv w_cgivwrd1_dv - Cognitive ability: Numeric ability: Immediate word recall // INPUT FILE - w_indresp.dta // OUTPUT FILE - w_cgwrec_dv.dta // WRITE FILEPATH WHERE YOU HAVE DOWNLOADED THE DATA global in "" // WRITE FILEPATH WHERE YOU WOULD LIKE TO SAVE THE OUTPUT FILE global outpath "" // 1 is for BHPS, 2 is for UKHLS global cohort "2" foreach w in c { // INCLUDE WAVE LETTERS FOR THE WAVES NEEDED global wave "`w'_" global num=strpos("abcdefghijklmnopqrstuvwxyz","`w'") global dta "" global waveno=$num global inpath "${in}/bhps_w${num}" if $cohort==2 { global waveno=$num+18 global inpath "${in}/ukhls" } use "${inpath}/${wave}indresp${dta}", clear set more off drop *_dv /*-------------ORIGINAL CODE--------------*/ // immediate word recall: cgwreci#_dv foreach x in 1 2 3 4 { * read by computer egen immcoml`x'=anycount(${wave}comimmls`x'1 ${wave}comimmls`x'2 ${wave}comimmls`x'3 ${wave}comimmls`x'4 /// ${wave}comimmls`x'5 ${wave}comimmls`x'6 ${wave}comimmls`x'7 ${wave}comimmls`x'8 ${wave}comimmls`x'9 /// ${wave}comimmls`x'10), value(1) replace immcoml`x' =-9 if ${wave}readtest~=1 & ${wave}wrdrcl~=`x' replace immcoml`x' =-9 if ${wave}readtest==2 & ${wave}wrdrcl==`x' * read by interviewer egen immintl`x' = anycount(${wave}intimmls`x'1 ${wave}intimmls`x'2 ${wave}intimmls`x'3 ${wave}intimmls`x'4 /// ${wave}intimmls`x'5 ${wave}intimmls`x'6 ${wave}intimmls`x'7 ${wave}intimmls`x'8 ${wave}intimmls`x'9 /// ${wave}intimmls`x'10), value(1) replace immintl1 =-9 if ${wave}readtest ~= 2 & ${wave}wrdrcl~=`x' replace immintl1 =-9 if ${wave}readtest == 1 & ${wave}wrdrcl==`x' * combined gen ${wave}cgwri`x'_dv = immcoml`x' if ${wave}readtest==1 & ${wave}wrdrcl==`x' replace ${wave}cgwri`x'_dv = immintl`x' if ${wave}readtest==2 & ${wave}wrdrcl==`x' recode ${wave}cgwri`x'_dv .= -7 if ${wave}ivfio==2 recode ${wave}cgwri`x'_dv .= -8 if ${wave}wrdrcl~=`x' recode ${wave}cgwri`x'_dv .= -2 if (${wave}comimmls`x'1==-2 & ${wave}intimmls`x'1==-8) /// | (${wave}intimmls`x'1==-2 & ${wave}comimmls`x'1==-8) recode ${wave}cgwri`x'_dv .= -9 lab var ${wave}cgwri`x'_dv "Cognitive ability: Immediate word recall `x': Number of correct items" lab def ${wave}cgwri`x'_dv -9 "missing" -8 "inapplicable" -7"proxy" -2"refused", replace lab def ${wave}cgwri`x'_dv 0"no item answered correctly" 10"all items answered correctly", add lab val ${wave}cgwri`x'_dv ${wave}cgwri`x'_dv fre ${wave}cgwri`x'_dv } egen ${wave}cgwri_dv=rmax(${wave}cgwri1_dv ${wave}cgwri2_dv ${wave}cgwri3_dv ${wave}cgwri4_dv) lab var ${wave}cgwri_dv "Cognitive ability: Immediate word recall: Number of correct items" lab def ${wave}cgwri_dv -9 "missing" -8 "inapplicable" -7"proxy" -2"refused", replace lab def ${wave}cgwri_dv 0"no item answered correctly" 10"all items answered correctly", add lab val ${wave}cgwri_dv ${wave}cgwri_dv fre ${wave}cgwri_dv // delayed word recall: cgwrecd#_dv foreach x in 1 2 3 4 { egen ${wave}cgwrd`x'_dv = anycount(${wave}delayls`x'1 ${wave}delayls`x'2 ${wave}delayls`x'3 /// ${wave}delayls`x'4 ${wave}delayls`x'5 ${wave}delayls`x'6 ${wave}delayls`x'7 ${wave}delayls`x'8 /// ${wave}delayls`x'9 ${wave}delayls`x'10), value(1) recode ${wave}cgwrd`x'_dv 0= -8 if ${wave}wrdrcl~=`x' // not applicable replace ${wave}cgwrd`x'_dv= -7 if ${wave}ivfio==2 // proxy respondent recode ${wave}cgwrd`x'_dv 0=-9 if ${wave}delayls`x'1==-9 recode ${wave}cgwrd`x'_dv 0=-2 if ${wave}delayls`x'1==-2 lab var ${wave}cgwrd`x'_dv "Cognitive ability: Delayed word recall `x': Number of correct items" lab def ${wave}cgwrd`x'_dv -9 "missing" -8 "inapplicable" -7"proxy" -2"refused", replace lab def ${wave}cgwrd`x'_dv 0"no item answered correctly" 10"all items answered correctly", add lab val ${wave}cgwrd`x'_dv ${wave}cgwrd`x'_dv fre ${wave}cgwrd`x'_dv } egen ${wave}cgwrd_dv=rmax(${wave}cgwrd1_dv ${wave}cgwrd2_dv ${wave}cgwrd3_dv ${wave}cgwrd4_dv) lab var ${wave}cgwrd_dv "Cognitive ability: Delayed word recall: Number of correct items" lab def ${wave}cgwrd_dv -9 "missing" -8 "inapplicable" -7"proxy" -2"refused", replace lab def ${wave}cgwrd_dv 0"no item answered correctly" 10"all items answered correctly", add lab val ${wave}cgwrd_dv ${wave}cgwrd_dv fre ${wave}cgwrd_dv // produce copies of underlying vairables with more comprehensive labels and variable names. forvalues x=1(1)10 { clonevar ${wave}cgwri1a`x'_dv=${wave}comimmls1`x' clonevar ${wave}cgwri2a`x'_dv=${wave}comimmls2`x' clonevar ${wave}cgwri3a`x'_dv=${wave}comimmls3`x' clonevar ${wave}cgwri4a`x'_dv=${wave}comimmls4`x' lab var ${wave}cgwri1a`x'_dv "Cognitive abilility: Immediate word recall 1(PC): item `x'" lab var ${wave}cgwri2a`x'_dv "Cognitive abilility: Immediate word recall 2(PC): item `x'" lab var ${wave}cgwri3a`x'_dv "Cognitive abilility: Immediate word recall 3(PC): item `x'" lab var ${wave}cgwri4a`x'_dv "Cognitive abilility: Immediate word recall 4(PC): item `x'" } forvalues x=1(1)10 { clonevar ${wave}cgwri1b`x'_dv=${wave}intimmls1`x' clonevar ${wave}cgwri2b`x'_dv=${wave}intimmls2`x' clonevar ${wave}cgwri3b`x'_dv=${wave}intimmls3`x' clonevar ${wave}cgwri4b`x'_dv=${wave}intimmls4`x' lab var ${wave}cgwri1b`x'_dv "Cognitive abilility: Immediate word recall 1(IV): item `x'" lab var ${wave}cgwri2b`x'_dv "Cognitive abilility: Immediate word recall 2(IV): item `x'" lab var ${wave}cgwri3b`x'_dv "Cognitive abilility: Immediate word recall 3(IV): item `x'" lab var ${wave}cgwri4b`x'_dv "Cognitive abilility: Immediate word recall 4(IV): item `x'" } forvalues x=1(1)10 { clonevar ${wave}cgwrd1`x'_dv=${wave}delayls1`x' clonevar ${wave}cgwrd2`x'_dv=${wave}delayls2`x' clonevar ${wave}cgwrd3`x'_dv=${wave}delayls3`x' clonevar ${wave}cgwrd4`x'_dv=${wave}delayls4`x' lab var ${wave}cgwrd1`x'_dv "Cognitive abilility: Delayed word recall 1: item `x'" lab var ${wave}cgwrd2`x'_dv "Cognitive abilility: Delayed word recall 2: item `x'" lab var ${wave}cgwrd3`x'_dv "Cognitive abilility: Delayed word recall 3: item `x'" lab var ${wave}cgwrd4`x'_dv "Cognitive abilility: Delayed word recall 4: item `x'" } forval x= 1(1)4 { clonevar ${wave}cgwri`x'a96_dv=${wave}comimmls`x'96 lab var ${wave}cgwri`x'a96_dv "Cognitive abilility: Immediate word recall `x'(PC): item 96" } forval x= 1(1)4 { clonevar ${wave}cgwri`x'b96_dv=${wave}intimmls`x'96 lab var ${wave}cgwri`x'b96_dv "Cognitive abilility: Immediate word recall `x'(IV): item 96" } forval x= 1(1)4 { clonevar ${wave}cgwrd`x'96_dv=${wave}delayls`x'96 lab var ${wave}cgwrd`x'96_dv "Cognitive abilility: Delayed word recall `x': item 96" } // rename interviewer observations clonevar ${wave}cgivwri11_dv= ${wave}memcont11 lab var ${wave}cgivwri11_dv "Cognitive ability: hh member present during immed. word recall" clonevar ${wave}cgivwri12_dv= ${wave}memcont12 lab var ${wave}cgivwri12_dv "Cognitive ability: non-hh member present during immed. word recall" clonevar ${wave}cgivwri13_dv= ${wave}memcont13 lab var ${wave}cgivwri13_dv "Cognitive ability: no-one present during immed. word recall" for var ${wave}memcont11 ${wave}memcont12 ${wave}memcont13: replace X=. if X<0 egen ${wave}cgivwri1_dv=group(${wave}memcont11 ${wave}memcont12 ${wave}memcont13) replace ${wave}cgivwri1_dv=${wave}cgivwri11_dv if ${wave}cgivwri1_dv==. lab def ${wave}cgivwri1_dv -9 "missing" -8 "inapplicable" -7"proxy" -2"refused" -1 "don't know", replace lab def ${wave}cgivwri1_dv 1"no-one else present", add lab def ${wave}cgivwri1_dv 2"hh member present", add lab def ${wave}cgivwri1_dv 3"non-hh member present", add lab def ${wave}cgivwri1_dv 4"hh & non-hh member present", add lab val ${wave}cgivwri1_dv ${wave}cgivwri1_dv lab var ${wave}cgivwri1_dv "Cognitive ability: anyone present during immed. word recall" forvalues x=1(1)16 { clonevar ${wave}cgivwri2`x'_dv= ${wave}memcont2`x' lab var ${wave}cgivwri2`x'_dv "Cognitive ability: pno `x' present during immed. word recall" } clonevar ${wave}cgivwri3_dv= ${wave}memcont3 lab var ${wave}cgivwri3_dv "Cognitive ability: Other person helped w immed. word recall" forvalues x=1(1)4 { clonevar ${wave}cgivwri4`x'_dv= ${wave}memprob`x' } lab var ${wave}cgivwri41_dv "Cognitive ability: word recall problem: hearing words" lab var ${wave}cgivwri42_dv "Cognitive ability: word recall problem: interruption" lab var ${wave}cgivwri43_dv "Cognitive ability: word recall problem: others present" lab var ${wave}cgivwri44_dv "Cognitive ability: word recall no problem" clonevar ${wave}cgivwri5_dv= ${wave}memaid lab var ${wave}cgivwri5_dv "Cognitive ability: whether aids were used during immed. word recall" forvalues x=1(1)8 { clonevar ${wave}cgivwriref`x'_dv= ${wave}immstop`x' } clonevar ${wave}cgivwriref97_dv= ${wave}immstop97 lab var ${wave}cgivwriref1_dv "Cognitive ability: refused immed. word recall: understanding of task" lab var ${wave}cgivwriref2_dv "Cognitive ability: refused immed. word recall: physical disability" lab var ${wave}cgivwriref3_dv "Cognitive ability: refused immed. word recall: attention problems" lab var ${wave}cgivwriref4_dv "Cognitive ability: refused immed. word recall: insufficient time" lab var ${wave}cgivwriref5_dv "Cognitive ability: refused immed. word recall: anxiety/discomfort" lab var ${wave}cgivwriref6_dv "Cognitive ability: refused immed. word recall: others present" lab var ${wave}cgivwriref7_dv "Cognitive ability: refused immed. word recall: R does not want to do task" lab var ${wave}cgivwriref8_dv "Cognitive ability: refused immed. word recall: language problems" lab var ${wave}cgivwriref97_dv "Cognitive ability: refused immed. word recall: other problem" // do the same for delayed memory test clonevar ${wave}cgivwrd11_dv= ${wave}dmemcont11 lab var ${wave}cgivwrd11_dv "Cognitive ability: hh member present during del.word recall" clonevar ${wave}cgivwrd12_dv= ${wave}dmemcont12 lab var ${wave}cgivwrd12_dv "Cognitive ability: non-hh member present during del. word recall" clonevar ${wave}cgivwrd13_dv= ${wave}dmemcont13 lab var ${wave}cgivwrd13_dv "Cognitive ability: no-one present during del. word recall" for var ${wave}dmemcont11 ${wave}dmemcont12 ${wave}dmemcont13: replace X=. if X<0 egen ${wave}cgivwrd1_dv=group(${wave}dmemcont11 ${wave}dmemcont12 ${wave}dmemcont13) replace ${wave}cgivwrd1_dv=${wave}cgivwrd11_dv if ${wave}cgivwrd1_dv==. lab def ${wave}cgivwrd1_dv -9 "missing" -8 "inapplicable" -7"proxy" -2"refused" -1 "don't know", replace lab def ${wave}cgivwrd1_dv 1"no-one else present", add lab def ${wave}cgivwrd1_dv 2"hh member present", add lab def ${wave}cgivwrd1_dv 3"non-hh member present", add lab def ${wave}cgivwrd1_dv 4"hh & non-hh member present", add lab val ${wave}cgivwrd1_dv ${wave}cgivwrd1_dv lab var ${wave}cgivwrd1_dv "Cognitive ability: anyone present during delayed word recall" forvalues x=1(1)16 { clonevar ${wave}cgivwrd2`x'_dv= ${wave}dmemcont2`x' lab var ${wave}cgivwrd2`x'_dv "Cognitive ability: whether pno `x' present during delayed word recall" } clonevar ${wave}cgivwrd3_dv= ${wave}dmemcont3 lab var ${wave}cgivwrd3_dv "Cognitive ability: Other person present helped w delayed word recall" forvalues x=1(1)8 { clonevar ${wave}cgivwrdref`x'_dv= ${wave}delaystop`x' } clonevar ${wave}cgivwrdref97_dv= ${wave}delaystop97 lab var ${wave}cgivwrdref1_dv "Cognitive ability: refused del. word recall: understanding of task" lab var ${wave}cgivwrdref2_dv "Cognitive ability: refused del. word recall: physical disability" lab var ${wave}cgivwrdref3_dv "Cognitive ability: refused del. word recall: attention problems" lab var ${wave}cgivwrdref4_dv "Cognitive ability: refused del. word recall: insufficient time" lab var ${wave}cgivwrdref5_dv "Cognitive ability: refused del. word recall: anxiety/discomfort" lab var ${wave}cgivwrdref6_dv "Cognitive ability: refused del. word recall: others present" lab var ${wave}cgivwrdref7_dv "Cognitive ability: refused del. word recall: R does not want to do task" lab var ${wave}cgivwrdref8_dv "Cognitive ability: refused del. word recall: language problems" lab var ${wave}cgivwrdref97_dv "Cognitive ability: refused del. word recall: other problem" clonevar ${wave}cglang1_dv=${wave}liceng lab var ${wave}cglang1_dv "Cognitive ability: whether tests conducted in English" clonevar ${wave}cglang2_dv=${wave}lictrans lab var ${wave}cglang2_dv "Cognitive ability: language in which tests were conducted" clonevar ${wave}cglang3_dv=${wave}licwho lab var ${wave}cglang3_dv "Cognitive ability: translated tests administered by who" for var *_dv: recode X .=-9 order pidp ${wave}cgwri1a*_dv ${wave}cgwri1b*_dv ${wave}cgwri1_dv ${wave}cgwri2a*_dv ${wave}cgwri2b*_dv /// ${wave}cgwri2_dv ${wave}cgwri3a*_dv ${wave}cgwri3b*_dv ${wave}cgwri3_dv ${wave}cgwri4a*_dv ${wave}cgwri4b*_dv /// ${wave}cgwri4_dv ${wave}cgwri_dv ${wave}cgivwri1*_dv ${wave}cgivwri1_dv ${wave}cgivwri2*_dv ${wave}cgivwri3_dv /// ${wave}cgivwri4*_dv ${wave}cgivwri5_dv ${wave}cgivwriref*_dv ${wave}cgwrd1*_dv ${wave}cgwrd2*_dv ${wave}cgwrd3*_dv /// ${wave}cgwrd4*_dv ${wave}cgwrd_dv ${wave}cgivwrd1*_dv ${wave}cgivwrd1_dv ${wave}cgivwrd2*_dv ${wave}cgivwrd3_dv /// ${wave}cgivwrdref*_dv ${wave}cglang1_dv ${wave}cglang2_dv ${wave}cglang3_dv isvar ${wave}cgwri1_dv ${wave}cgwri2_dv ${wave}cgwri3_dv ${wave}cgwri4_dv ${wave}cgwri_dv /// ${wave}cgivwri1_dv ${wave}cgwrd_dv ${wave}cgivwrd1_dv foreach x in `r(varlist)' { replace `x'=-7 if ${wave}ivfio==2 } keep pidp ${wave}cgwri1_dv ${wave}cgwri2_dv ${wave}cgwri3_dv ${wave}cgwri4_dv ${wave}cgwri_dv /// ${wave}cgivwri1_dv ${wave}cgwrd_dv ${wave}cgivwrd1_dv lab dat "Cognitive ability: word recall derived variables" save "${outpath}/${wave}cgwrec_dv.dta", replace }