Dear,
I come across a data step with where statement in set statement. The output in dataset two should have only one obs. But it has two obs. Why where statement is not working as "IF" statement . Thank you
data one;
length ONE $10;
input ONE $ TWO;
datalines;
Completed 1
un 2
;
data two;
set one(where=(upcase(one)^='Completed'));
run;
Correction:
data one;
length ONE $10;
input ONE $ TWO;
datalines;
Completed 1
un 2
;
data two;
set one(where=(upcase(one)^='COMPLETED'));
run;
/*or*/
data one;
length ONE $10;
input ONE $ TWO;
datalines;
Completed 1
un 2
;
data two;
set one(where=((one)^='Completed'));
run;
set one(where=(upcase(one)^='Completed'));
You upcased the variable but didn't upcase the word 'completed'.
Available on demand!
Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.
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.