使用Stata将11个二进制变量重新编码为1

时间:2014-09-21 04:19:12

标签: stata ordinal

我正在使用Stata。所以我有11个单独的变量,都是“0 1”二进制变量。我想将它们重新编码为一个变量,同时我想将变量1-3中的值组合成一个,4-9组合成一个变量,并保持变量10和11不变。所以基本上没有11个变量,我想要一个我可以选中的重新编码变量,它显示以下内容:

1 (composed of variable 1-3) frequency
2 (composed of variables 4-9) frequency
3 (composed of variable 10) frequency
4 (composed of variable 11) frequency

我开始使用rmax来组合前三个变量,但之后不知道该怎么做!任何人都可以帮助我吗?

这就是我的开始,但不确定我是否走在正确的轨道上:

egen exclusion=rmax(avo_condition_1 avo_condition_2 avo_condition_3)

recode exclusion (0=0) (1=1)

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

假设v01v11是您的旧变量,x将是您的新组合变量。我假设对于每次观察,只有一个变量v01v11可以取值1,其余的必须采取值0。然后执行以下操作:

gen x = .
replace x = 10 if v01 | v02 | v03
replace x = 20 if v04 | v05 | v06 | v07 | v08 | v09
replace x = 30 if v10
replace x = 40 if v11

如果需要,您可以标记x的值,但当然,这是可选的。

label define xlab 10 "Var 01-03" 20 "Var 04-09" 30 "Var 10" 40 "Var 11"
label values x xlab