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
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!
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.