Stata如何查看四次HBSC均参加的国家及数量?

待注释。

//方法1
gen HBSC4=.
tempname var3 var4
tostring countryno,gen(`var3')
encode `var3',gen(`var4')
summ `var4'
disp `r(max)'
forvalues i = 1/`r(max)' {
  quietly tab hbsc if `var4'==`i'
  quietly replace HBSC4=r(r) if `var4'==`i'
}

//方法2
tempname var5
tab hbsc,gen(`var5')
foreach var of varlist `var5'*{
quietly bysort countryno:egen `var'_m=max(`var')
    //drop if `var'_m==0 删除此轮未做的国家
}
egen HBSC4=rowtotal(`var5'?_m)


//查看四次HBSC均参加的国家及数量
tab countryno hbsc if HBSC4==4
display r(r)

 

注: r(r) 返回的是number of rows。