请问 do if 与 if的区别
对于recode 我也有个问题
为什么有的时候是 sysmis=1 有时候是1=sysmis 两者的区别是什么
我看这2个语句差不多啊
请问具体应用有什么区别呢?
例如 我看得一个例子
IF ( totaldays_wandm >= 5) moderlevel2=1.
EXECUTE.
DO IF (M_trunandw_min< 30).
RECODE moderlevel2 (1=SYSMIS).
END IF.
EXECUTE.
我的理解
这个部分的意思就是 如果 totaldays_wandm这个变量大于等于5 ,那么moderlevel2赋值为1
如果M_trunandw_min< 30,那么moderlevel2返回来赋值为sysmis 包括上一次运行为1的值也赋值成sysmis 是这个意思么?
do if-end if 可以在中间插入别的语句 比如recode
而 if 之后直接跟的就是要做的事情,()里面的是条件
并且在运行过if 以后 如果要修改if中的值 最好用 do if 是这个意思么?
还有就是
if不能连用
DO IF (a = 1).
RECODE a1 a2 a3 (SYSMIS=0).
如果一定要用if 是不是要写3次
if(a=1)a1=0
if(a=1)a2=0
if(a=1)a3=0
谢谢



雷达卡




京公网安备 11010802022788号







