我有以下数据集:
AGE HSQ PCT
65 1 0.7
65 2 0.2
65 3 0.1
66 1 0.5
66 2 0.25
66 3 0.25
[...]
我需要的是获得以下输出:
AGE P1 P2 P3
65 0.7 0.2 0.1
66 0.5 0.25 0.25
[...]
我被告知要采用LAG
或为了做到这一点,对我来说这似乎是一个很好的策略FIRST.AGE
。LAST.AGE
但是我无法获得最终结果..我使用的(错误)代码是:
DATA OUTPUT;
SET SAMPLE;
BY AGE HSQ;
IF LAST.AGE THEN DO;
P1=LAG2(PCT);
P2=LAG1(PCT);
P3=PCT;
END;
RUN;
但它跳到以前的年龄百分比,这不是我需要的..语法错误在哪里?谢谢!