Hello,
Is there a way to retain the sum of one row and use that sum as the starting point for a second row?
for example-
Have:
| Month | Start | New | Cancelled | End |
| Jan | 10 | 2 | -1 | |
| Feb | 1 | -3 | ||
| March | 4 | 0 |
Want:
| Month | Start | New | Cancelled | End |
| Jan | 10 | 2 | -1 | 11 |
| Feb | 11 | 1 | -3 | 9 |
| March | 9 | 4 | 0 | 13 |
Thank you!
data have;
infile cards truncover;
input Month $ Start New Cancelled End;
cards;
Jan 10 2 -1
Feb . 1 -3
March . 4 0
;
data want(drop=_end);
set have;
retain _end;
if _n_=1 then do; _end=sum(of start--cancelled);end=_end;end;
else do; start=_end;_end=sum(of start--cancelled);end=_end;end;
run;
data have;
infile cards truncover;
input Month $ Start New Cancelled End;
cards;
Jan 10 2 -1
Feb . 1 -3
March . 4 0
;
data want(drop=_end);
set have;
retain _end;
if _n_=1 then do; _end=sum(of start--cancelled);end=_end;end;
else do; start=_end;_end=sum(of start--cancelled);end=_end;end;
run;
worked perfectly! thank you for your help
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
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.