Hi all, I'm new here, please forgive me if I'm posting this wrong or in the wrong area.
I've been struggling with this a bit. I'm trying to sum the most recent consecutive months until a 0 is reached. Please see my have/want below.
HAVE:
Month N | Count | SUM |
---|---|---|
1 | 0 | |
2 | 1 | |
3 | 1 | |
4 | 0 | |
5 | 1 | |
6 | 0 | |
7 | 1 | |
8 | 1 | |
9 | 1 |
WANT;
Month N | Count | SUM |
---|---|---|
1 | 0 | 0 |
2 | 1 | 1 |
3 | 1 | 2 |
4 | 0 | 0 |
5 | 1 | 1 |
6 | 0 | 0 |
7 | 1 | 1 |
8 | 1 | 2 |
9 | 1 | 3 |
Thanks in advance!
Homework? Check out the sum statement.
data want;
set have;
if count=0 then sum=0;
else sum + count;
run;
PG
Alternatively with first.
data want;
set have;
by count notsorted;
if first.count then sum=count;
else sum+count;
run;
Thanks,
Jag
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
Need to connect to databases in SAS Viya? SAS’ David Ghan shows you two methods – via SAS/ACCESS LIBNAME and SAS Data Connector SASLIBS – in this video.
Find more tutorials on the SAS Users YouTube channel.