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

Hi.....I am trying to calculate the accumulated differences between the cost and deductible amount for each ID. That is, I want to find the amount that exceeds the deductible for each ID as a new record is added for each ID. Thanks

 

 

 

ID Date Cost Deductible Amount
11234 1/23/2016 175 250 0
11234 2/27/2016 50 250 0
11234 3/17/2016 75 250 50
11234 4/21/2016 45 250 95
11234 5/25/2016 90 250 185
12266 1/20/2016 150 300 0
12266 2/27/2016 75 300 0
12266 3/30/2016 50 300 0
12266 4/15/2016 45 300 20
1 ACCEPTED SOLUTION

Accepted Solutions
Reeza
Super User

1. Calculate a running total

2. Subtract total from deductible, set to 0 if applicable. 

 

Data want;
Set have;

By id;

If first.id then running_total=cost;
Else running_total+cost;

Amount = ifn(running_total>deductible, running_total-deductible, 0);

Run;

View solution in original post

1 REPLY 1
Reeza
Super User

1. Calculate a running total

2. Subtract total from deductible, set to 0 if applicable. 

 

Data want;
Set have;

By id;

If first.id then running_total=cost;
Else running_total+cost;

Amount = ifn(running_total>deductible, running_total-deductible, 0);

Run;

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

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!

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
  • 1 reply
  • 1133 views
  • 0 likes
  • 2 in conversation