Im wondering if it is possible to create a macro variable that creates an output of the frequency of a certain number (zero in this case) using call symput etc.I know how I would do it to get a mean (proc means, then output, then a call symput) but dont know if it is possible for a frequency count
You can create a macro of anything...though should you is a different question ![]()
proc sql;
select count(var_interest) into :num_zero
from have
where var_interest=0;
quit;
Or you can run proc freq and then a data step or proc sql to create the macro variable.
You can create a macro of anything...though should you is a different question ![]()
proc sql;
select count(var_interest) into :num_zero
from have
where var_interest=0;
quit;
Or you can run proc freq and then a data step or proc sql to create the macro variable.
Thanks, works great, is there an easy way I can change it from count to a percentage?
How do you want to calculate the percent? # of 0/Total number?
proc sql;
select sum(var_interest=0)/count(*) into :macro_variable
from have;
quit;
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 lock in 2025 pricing—just $495!
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.