假如表示省份的变量为sf,表示东、中、西部的变量为qz
encode sf , gen(sf1) //将变量sf中的内容由字符型转换为数值型,生成新变量sf1
gen qz=.
replace qz=1 if inlist(sf1, 1,2,3,4,5,6,...) //后面的1,2,3,4...这些数字是代表东部省份
replace qz=2 if inlist(sf1,7,8,9,...) //7,8,9,...代表中部的省份
replace qz=3 if inlist(sf1,11,12,13,...) //代表西部省份
gen dum_1=.
replace dum_1=1 if qz==1
replace ...
假如表示省份的变量为sf,表示东、中、西部的变量为qz
encode sf , gen(sf1) //将变量sf中的内容由字符型转换为数值型,生成新变量sf1
gen qz=.
replace qz=1 if inlist(sf1, 1,2,3,4,5,6,...) //后面的1,2,3,4...这些数字是代表东部省份
replace qz=2 if inlist(sf1,7,8,9,...) //7,8,9,...代表中部的省份
replace qz=3 if inlist(sf1,11,12,13,...) //代表西部省份
gen dum_1=.
replace dum_1=1 if qz==1
replace dum_1=0 if dum_1==.
gen dum_2=.
replace dum_2=1 if qz==2
replace dum_2=0 if dum_2==.
这样最后就形成了两个虚拟变量,dum_1 dum_2 ,当省份是东部时,dum_1=1,否则等于0。当省份是中部时,dum_2=1,否则是0。多余变量可以用drop命令删除