data have;
input customer status $;
cards;
1 Active
2 Passive
3 Passive
4 Passive
5 Active
6 Active
;
run;
proc format library=work;
invalue stat
"Active" = 1
"Passive" = 0
other = -1
;
value $stat
"Active" = '1'
"Passive" = '0'
other = '.'
;
run;
data want;
set have;
stat_num = input(status,stat.);
stat_num2 = ifn(status="Active",1,0);
format status $stat.;
run;
Note how I presented your example data in a form that allows for easy recreation through a simple copy/paste and run.
You see three possible methods for achieving your objective, the last by not changing/setting any value at all, but by applying a display format.
Which method you use depends on the format in which you want to have the 0s and 1s.
... View more