Hello,
I have the number of people by age. My numeric variable of age category ' Cat_age ' was coded in 1,2,3.
1='3-5 years'
2='6-11 years'
3='12-18 years'
I would like to draw a graph with the number of people by age. So i used a proc format to display in my graph "3-5 years' instead of "1" but it doesn't seem to work... The graph displays me column with 1,2,3 in the horizontal axis. Ci-below my script (i am a beginner in SAS ...).
Thanks in advance,
title 'Age distribution';
axis1 stagger label=('Âge');
axis2 label=('Effectif');
proc format;
value cat_age 1='3-5 ans'
2='6-11 ans'
3='12-18 ans';
run;
proc gchart data=conso;
vbar cat_age /discrete maxis=axis1 raxis=axis2;
format cat_age;
run;
quit; Your methodology is correct but syntax isn't.
The syntax is
FORMAT variable_name(s) format_name.;
So in your case, since you've named the format the same as the variable name:
Format cat_age cat_age.;
Your methodology is correct but syntax isn't.
The syntax is
FORMAT variable_name(s) format_name.;
So in your case, since you've named the format the same as the variable name:
Format cat_age cat_age.;
Thank you ! Now it works !
proc gchart data=conso;
vbar cat_age /discrete maxis=axis1 raxis=axis2;
format cat_age cat_age.;
run;
quit;
If you have the option switch to SGPLOT instead, you get better graphics and more supported.
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.