作者RequiemInDm (安魂曲)
站内Statistics
标题Re: [程式] SAS 前後期比较
时间Sun Dec 6 16:41:46 2009
: 依照t大写法
: Obs P t
: 1 2 -1
: 2 2 -1
: 3 2 -1
: 4 5 1
: 5 1 0
: 6 3 1
: 7 2 -1
: 8 3 1
: 第7项就会被判断成-1 而不是0 想问一下 有可以选择从P的哪个资料点开始做判断
: 的方法嘛? 感谢回答
以下是我自己写出问题要的答案 (感谢k大跟t大之前推文),
只是我在想应该有更简洁方式写法才是, 因为用c语言写判断式似乎不需要用那麽多!
retain d 0 n 0;
lagp = lag(p);
lag2p = lag2(p);
if _n_ =1 then d = p;
if (p = d ) then do;
if n =0 then t = -1;
else goto pp;
end;
pp:
else do;
n+1;
if p > lagp then t=1;
else if p = lag2p then do;
if lagp > lag2p then t =1;
else t =0;
end;
else t =0;
end;
※ 编辑: RequiemInDm 来自: 218.167.64.56 (12/06 22:31)