DATA Step, Macro, Functions and more

Counter Flags

Accepted Solution Solved
Reply
Occasional Contributor
Posts: 10
Accepted Solution

Counter Flags

Hi,

 

I have the following dataset

 

Account ID  Month  Arrears

1                    1           0

1                    2           1

1                    3           0

1                    4           1

1                    5           2

1                    6           2

1                    7           0

 

 

and need the foloowing dataset - if arrears gt 0 then count months since last 0 in arrears

 

Account ID  Month  Arrears       Count

1                    1           0                  0

1                    2           1                  1     

1                    3           0                  0

1                    4           1                  1

1                    5           2                  2

1                    6           2                  3

1                    7           0                  0

 

Any help to code this scenario would be helpful.

 

Thanks

 

Adnan


Accepted Solutions
Solution
‎06-06-2017 12:08 PM
Trusted Advisor
Posts: 1,369

Re: Counter Flags

Try next code:

 

data want;

  set have;

   by  id;

        retain count;

       if first.id or arrears=0 then count=0;

      else count+1;

run;

View solution in original post


All Replies
Solution
‎06-06-2017 12:08 PM
Trusted Advisor
Posts: 1,369

Re: Counter Flags

Try next code:

 

data want;

  set have;

   by  id;

        retain count;

       if first.id or arrears=0 then count=0;

      else count+1;

run;

☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

Discussion stats
  • 1 reply
  • 116 views
  • 0 likes
  • 2 in conversation