stata快速按分类生成虚拟变量法:
(1)使用inlist函数,具体用法:
gen above_avg = inlist(原变量名,"好","较好")
gen not_avg = inlist(原变量名,"好","较好") | inlist("差","较差") 或者也可以用&表示同时满足条件
(2)使用inrange函数,具体用法:
gen x = inrange(原变量名,大于等于的数,小于等于的数)
gen x = inrange(原变量名,大于等于的数,.) 表示只有大于等于的条件
(3)使用cond函数,具体用法:
gen dum1 = cond(A>2,1,0,.) //如果表达式A>2为真,则dum1为1,如果表达式A>2为假,则dum1为0,如果表达式A>2缺失,则dum1为.,提醒:当A为缺失值时,系统默认.>2,即表达式为真,则dum1为1
gen dum2 = cond(A,1,0,.) //如果变量A不等于0,则dum2为1,如果变量A等于0,则dum2为0,如果变量A缺失,则dum2为.gen dum3 = cond(missing(A),.,cond(A>2,1,0)) //如果变量A缺失,则dum3为.,如果变量A没有缺失,则dum3为执行cond(A>2,1,0)的结果