0
我需要一些帮助来创建新变量。我觉得我需要使用egen
函数,但我无法弄清楚。使用当前数据集中的3个变量在Stata中创建新的分类变量
我有3个变量用于癌症治疗 - 放疗,化疗和手术 - 每个患者接受每次治疗的次数。
我想创建一个新的 “治疗” 可变,其中1 =放射疗法,2 =化疗,3 =手术,4 =组合(具有1个或多个用于任何上述3),5 =无
我需要一些帮助来创建新变量。我觉得我需要使用egen
函数,但我无法弄清楚。使用当前数据集中的3个变量在Stata中创建新的分类变量
我有3个变量用于癌症治疗 - 放疗,化疗和手术 - 每个患者接受每次治疗的次数。
我想创建一个新的 “治疗” 可变,其中1 =放射疗法,2 =化疗,3 =手术,4 =组合(具有1个或多个用于任何上述3),5 =无
您应该始终显示您尝试过的代码并提供示例数据。有关指导,请参阅https://stackoverflow.com/help/mcve。
假定变量radio
chemo
surgery
值0或正值。
gen treatment = 5
replace treatment = 1 if radio & !chemo & !surgery
replace treatment = 2 if chemo & !radio & !surgery
replace treatment = 3 if surgery & !chemo & !radio
replace treatment - 4 if ((surgery > 0) + (radio > 0) + (chemo > 0)) > 1
使用事实,非零是真实的,它的否定是错误的。见this FAQ
另一种方式来做到这一点:
gen treatment = 5
replace treatment = 1 if radio
replace treatment = cond(treatment == 1, 4, 2) if chemo
replace treatment = cond(inlist(treatment, 1, 2), 4, 3) if surgery
在类似的情况下,我想你的代码没有类别0,而不是5这是有可能产生更合理的图表。
未经测试的代码。