各位好,求助一个问题,我有数据是这样的:
airline | flight | org | dest | leg |
AA | 2344 | A | B | 1 |
AA | 2344 | B | C | 2 |
AA | 2344 | C | D | 3 |
AA | 2344 | D | E | 4 |
AB | 1235 | G | H | 1 |
AC | 3456 | S | F | 1 |
AD | 3423 | X | Y | 1 |
AD | 3423 | Y | Z | 2 |
想根据字段leg去连接数据,例如连续的leg就可以连接成新的org和dest,
leg1,2,可以连接成A-C的,生成 AA 2344 A C leg这样的记录。
我用了
data test3;
set test;
if leg-lag(leg)=1 then do;
re_org=lag(org);
re_dest=dest;
end;
run;
(test是原始数据)
但是出来的结果是:
airline | flight | org | dest | leg | re_org | re_dest |
AA | 2344 | A | B | 1 | | |
AA | 2344 | B | C | 2 | | C |
AA | 2344 | C | D | 3 | B | D |
AA | 2344 | D | E | 4 | C | E |
AB | 1235 | G | H | 1 | | |
AC | 3456 | S | F | 1 | | |
AD | 3423 | X | Y | 1 | | |
AD | 3423 | Y | Z | 2 | D | Z |
我想知道问题出在哪?
怎样能实现我想要的结果?多谢