Folks,
I would like to create a condtional variable such that if PAYE income is greater than or equal to 50% of gross income then employee = Y if not employee = N
Initially I wanted something as, but the following code doesn't work. Could anyone recommend anything to me, please?
if payeinc>=50% grossinc then employee='Y'; else employee ='N';
For binary choices such as these, your easiest method is either ifn() to return a numeric value or ifc() to return a character. They both have the form:
<variable>=ifn(<condition>,<result positive value>,<result negative value>);
So in your case you can say:
employee=ifc(payinc >= 50,'Y','N');
Note that in the above I am guessing that payinc is numeric (as that would make most sense), if its character - and why are you storing numbers in character fields - then you need to input it first.
Are you using Query builder? If so, try a computed calculation and choose recode to use the GUI to create the code.
Or use an advanced expression and a CASE statement.
SAS note: How to apply if/then logic in SAS EG
And the condition needs to be correct
payeinc > 0.5*gross_incone
Available on demand!
Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.
What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.
Find more tutorials on the SAS Users YouTube channel.