作者wlsherica (Mon_tresor)
看板Statistics
标题Re: [程式] Stata的时间资料处理问题→SAS版本
时间Thu Feb 11 12:30:29 2010
前文恕删,先谢谢原po的题目让我有机会练习如何在SAS环境操作这样的问题。
以下是我跑的SAS程式,参考t大与k大的说明,使用sort以及merge
不晓得有没有更精简的写法,请大家多多指教!
data a;
input id time event;
cards;
1 2007 1
1 2008 0
1 2009 1
1 2010 1
2 2007 0
2 2008 1
2 2009 0
2 2010 1
;
run;
proc sort data=a;
by descending id descending time;
run;
data a1;
set a;
if event=0 then delete;
endtime=lag(time);
run;
proc sort data=a;
by id time;
run;
proc sort data=a1;
by id time;
run;
data final;
merge a a1;
by id time;
run;
proc sort data=final;
by id time;
run;
不过遇到一个问题,就是第一个ID的最後一笔time会抓到下面的时间
我後来用last.id 去掉了~"~
谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.4.180
1F:推 hannahluis:感谢众位大大提点! 02/11 22:58