I have the following dataset
data have;
input profit;
datalines;
52
34
60
57
70
;
run;
I want to write a program that will create a new dataset, only containing the difference between the first and last observation?
In this case the code would show 70 (last observation) - 52 (first observation), so the output would be 18.
Here is one way:
data want; set have end=last; retain first; if _n_ eq 1 then first=profit; if last then do; result=profit-first; output; end; run;
Art, CEO, AnalystFinder.com
Here is one way:
data want; set have end=last; retain first; if _n_ eq 1 then first=profit; if last then do; result=profit-first; output; end; run;
Art, CEO, AnalystFinder.com
hi,
data want(drop=_profit);
set have(firstobs=min);
set have(rename=(profit=_profit)) nobs=_nobs_ point=_nobs_;
d=_profit-profit;
output;
stop;
run;
Regards,
Naveen Srinivasan
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.