各个变量都有0、1、9、“.”的取值,表示否、是、不清楚、缺失的意思,我需要将新农合医保和其他医保(拥有的情况)以及无医保、不清楚和缺失的组分类出来,使用的命令是gen instype=0
replace instype=1 if m3a_4==1(有新农合)
replace instype=2 if m3a_0==1 | m3a_1==1 | m3a_2==1 | m3a_3==1 | m3a_5==1 | m3a_6==1 | m3a_7==1 | m3a_8==1
replace instype=3 if m3a_0==0 | m3a_1==0 | m3a_2==0 | m3a_3==0 | m3a_5==0 | m3a_6==0 | m3a_7==0 | m3a_8==0
replace instype=. if m3a_0==9 | m3a_1==9 | m3a_2==9 | m3a_3==9 | m3a_5==9 | m3a_6==9 | m3a_7==9 | m3a_8==9 |m3a_0==. | m3a_1==. | m3a_2==. | m3a_3==. | m3a_5==. | m3a_6==. | m3a_7==. | m3a_8==.
但显示的结果都很奇怪,譬如,做完上述所有步骤,tab instype就只有=3的情况,只做前三步的话,只有=0 =2 =3的情况。之类的~~~~请问是怎么回事?