Is it possible to write IF-THEN-ELSE statement under any procedure?
%macro (depvar=,numvars=,charvars=);
proc logistic data = abc descending;
class &charvars / param = ref;
model &depvar = &numvars &charvars / selection = stepwise;
run;
%mend;
I want the following statement wrapped in IF THEN condition. It should run only if an user specify variable(s) in CHARVARS parameter in the macro.
class &charvars / param = ref;
Something like this :
proc logistic data = abc descending;
%IF countw(&charvars) = 0 %THEN;
class &charvars / param = ref;
%END;
model &depvar = &numvars &charvars / selection = stepwise;
run;
1. Functions in macro code you need to use %sysfunc
2. I think you mean to check if Countw is greater than 0, not equal to 0.
Perhaps something like the following:
%IF %sysfunc(countw(&charvars)) > 0 %THEN;
class &charvars / param = ref;
%END;
Try this:
%IF &CHARVARS ^= %STR( ) %THEN %DO; CLASS...; %END;
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and save with the early bird rate—just $795!
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.
Ready to level-up your skills? Choose your own adventure.