w********a 发帖数: 32 | 1 有一个新的问题。
Original data.
data A;
input date $ y;
datalines;
2/1 0
2/2 -1
2/3 0
2/4 0
2/5 0
2/6 1
2/7 0
2/8 -1
2/9 0
2/10 1
;
run;
y的value为-1 是一个事件的开始,y的value为1是一个事件的结束日期。要想把事件中
所有的-1和0变成1.
final data:
2/1 0
2/2 1
2/3 1
2/4 1
2/5 1
2/6 1
2/7 0
2/8 1
2/9 1
2/10 1
大家有没有好的办法呢?
谢谢了!! |
p***r 发帖数: 920 | 2 you have so many questions, hehe |
l*****8 发帖数: 483 | 3 data b;
set a;
retain check;
if y =-1 then check=1;
if check=1 then yy =1;
else yy=0;
if y=1 then check=0;
drop y;
rename yy=y;
run; |
d*******o 发帖数: 493 | 4 你的狗真大啊
【在 l*****8 的大作中提到】 : data b; : set a; : retain check; : if y =-1 then check=1; : if check=1 then yy =1; : else yy=0; : if y=1 then check=0; : drop y; : rename yy=y; : run;
|