BookmarkSubscribeRSS Feed
Linmuxi
Calcite | Level 5

  I had a database like this:

 

Account_NumberMonthPayment_Method
10 
11PI
12PI
20 
21 
22 
23 

 

For some data record error reason, for example, as the account number = 1, when month =0, the payment method should be PI instead of missing. but the account number 2 is fine. Since all of its months should be missing. So the correct database would be :all of the months should be PI or all of the months should be missing for the same account.

So my question is: for the account like 1, is that possible to let payment method = PI when month = 0? The problem only occur when month = 0 in the problem account.

I try  CASE WHEN MONTH = 1 AND Payment_method= 'PI'
THEN (CASE WHEN MONTH =0 THEN PAYMENT_METHOD = 'P' END)
end

group by Account_number

 

It doesn't work at all...

 

Thanks in advance

2 REPLIES 2
Reeza
Super User

You can use MAX/MIN with SQL.

 

proc sql;
create table want as
select *, max(payment_method) as payment_method_max
from have;
quit;
Linmuxi
Calcite | Level 5

Thank you! I added a group by and it works out!!!

SAS Innovate 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

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
  • 2 replies
  • 1899 views
  • 1 like
  • 2 in conversation