I have a variable for hourly earnings which respondents can answer with accuracy to the penny. So the mean is like $27, but toward the bottom there is so much small variation in reporting, so it has one person at $11.61 one person at $11.63 two people at $11.67, etc.. but when you get higher there's just clumps of people at $15.00 and $25.00.
So if I graph it, the chart has many more values at the low end and it skews the chart. Is there a way to automatically recode them to all be in clumps increasing by $0.50 or something (without manually recoding hundreds of ranges)?
You would still have a skewed distribution, but you could use the round function to adjust the salaries. e.g.:
data have; input salary; datalines; 11.53 11.48 12.10 12.49 12.74 12.75 ; data want; set have; round_salary=round(salary,0.5); run;
Art, CEO, AnalystFinder.com
ROUND(variable, 0.50)
I thought that's what a histogram did? It bins it automatically?
You would still have a skewed distribution, but you could use the round function to adjust the salaries. e.g.:
data have; input salary; datalines; 11.53 11.48 12.10 12.49 12.74 12.75 ; data want; set have; round_salary=round(salary,0.5); run;
Art, CEO, AnalystFinder.com
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
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.