Saturday, October 17, 2009

SAS Tip_less code: Assigning 1 or 0 to flag variable

*Creating a flag variable when a test variable meets certain criteria is very common for SAS programmer….

Many SAS programmers use the below code to assign a flag of 1 or 0 depending on of the test variable meets criteria or not.;

*Ex:;

*Create a test dataset;
data test;
input id age sex $;
cards;
1 25 Male
2 35 Female
3 29 Female
4 37 Male
5 32 Male

;
run;


*Most programmers use the following code to assign avalue of 1 0r 0 to flag variable;

data test1;
set test;
if sex='Male' then flag=1;
else flag=0;
run;


*Some programmers use the following code to do the same task;
data test;
set test;
flag=ifn(sex='Male',1,0);
run;

*You can write ....even simpler code than the above 2 dataset step methods.;

data test2;
set test;
flag='Male'=sex;
run;

*Or;

data test3;
set test;
flag=sex='Male';
run;

*Note: The above code does the same thing as the 1st and 2nd method;
Caveat: This code works only when you are trying to assign a value of 1 and 0 to test variable;


0 comments:

Post a Comment

ShareThis