BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
huffa9299
Fluorite | Level 6

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:

MonthStartNewCancelledEnd
Jan102-1 
Feb 1-3 
March 40 

 

Want:

MonthStartNewCancelledEnd
Jan102-111
Feb111-39
March94013

 

Thank you!

1 ACCEPTED SOLUTION

Accepted Solutions
novinosrin
Tourmaline | Level 20
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;

View solution in original post

2 REPLIES 2
novinosrin
Tourmaline | Level 20
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;
huffa9299
Fluorite | Level 6

worked perfectly! thank you for your help

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1995 views
  • 0 likes
  • 2 in conversation