I am trying to produce a dataset that contains 3 variables (Year, Age, Population (ie. tot_pop)), and includes ONLY the maximum value of tot_pop for each year and age category (Formatted). The syntax below is not producing the desired output (See attachment for actual output).
PROC MEANS DATA=want NOPRINT MAXDEC=0;
CLASS year age;
VAR tot_pop ;
OUTPUT OUT=want_2 (drop=_FREQ_ _TYPE_)
MAX=tot_pop;
RUN;
I want the final dataset to look like this:
Year Age Population
2000 0-10 1,000,000 (Max value for year and age category)
2000 11-15 1,200,000 (Max value for year and age category)
2000 16-18 1,300,000 (Max value for year and age category)
2001 0-10 1,150,000 (Max value for year and age category)
2001 11-15 1,250,000 (Max value for year and age category)
2001 16-18 1,450,000 (Max value for year and age category)
Etc.
Thanks for your help here!
That seems strange. Don't drop the _type_ columns and rerun. Post your log and output.
Do you have a format applied to your CLASS variables?
PROC MEANS DATA=want NOPRINT MAXDEC=0 NWAY ;
CLASS year age;
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.