I am printing a proc freq via pdf and I was wondering if there is a way to only print 200 observations in a proc freq?
Thank you
Since your subject line says "top frequencies" what I would suggest would be to run proc freq with no print and create an output data set and then print that with the OBS= dataset option to print the top 200.
Something like:
proc freq data=have noprint order=freq;
tables variable /out= want;
run;
proc print data=want (obs=200) noobs ;
run;
Since your subject line says "top frequencies" what I would suggest would be to run proc freq with no print and create an output data set and then print that with the OBS= dataset option to print the top 200.
Something like:
proc freq data=have noprint order=freq;
tables variable /out= want;
run;
proc print data=want (obs=200) noobs ;
run;
I assume you want only the Top 200 groups, ordered by frequency. See the PROC FREQ discussion at https://communities.sas.com/thread/82076
Basically you can use ORDER=FREQ and suppress output by using the NOPRINT option, then use the OUT= option on the TABLES statemnt to write the frequencies to a data set. Then use PROC PRINT with OBS=200.
Thank you and what you provided worked however I have 10 variable is my freq that I want to print. When I do the out= it only prints the variable in front of the out - which happens to be the last variable.
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!
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.