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
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.