Hi,
I am trying to run proc freq on a charachter variable with multiple where statement eg.plus additional criteria,
where var = "1" or var = "2" or var="3",
where var2 = 1;
its not working? does not give errors but just a
NOTE: WHERE clause has been replaced.
any suggestions as to why this is not working?
Additionally there are bits that can make your clauses shorter and perhaps easer to understand.
One is use of the IN operator to check for a list of conditions on a single variable:
Where Var in ('1' '2' '3') ;
if the values are numeric you can use a range of values:
Where Var2 in (1 3 15:27); matches 1, 3 and everything from 15 to 27 inclusive.
The second WHERE statement is replacing the first. Instead of using two WHERE clauses, use a single statement. I'm not sure if you want AND or OR, but try like:
where (var = "1" or var = "2" or var="3") AND
var2 = 1;
Hi @AZIQ1,
Maybe you were thinking of the "NOTE: WHERE clause has been augmented."? This (comparably harmless) note occurs if a WHERE statement and a WHERE= dataset option are used in conjunction. Example:
proc freq data=sashelp.class(where=(age>14));
where weight>100;
tables age;
run;
Additionally there are bits that can make your clauses shorter and perhaps easer to understand.
One is use of the IN operator to check for a list of conditions on a single variable:
Where Var in ('1' '2' '3') ;
if the values are numeric you can use a range of values:
Where Var2 in (1 3 15:27); matches 1, 3 and everything from 15 to 27 inclusive.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.
Find more tutorials on the SAS Users YouTube channel.