SAS : Power of PROC FORMAT

This tutorial explains the uses of PROC FORMAT in the most common data manipulation tasks.

Sample Data

Data Source : sashelp.cars
Sample Data
Example 1 :
Suppose you are asked to group MSRP variable based on the following conditions and check the number of observations falling in each groups
Values greater than 40,000 should be labelled 'High'
Values between 26,000 and 40,000 should be labelled 'Medium'
Else 'Low';
Solution
proc format;
value range
40000-high='High'
26000-< 40000='Medium'
other ='Low';
run;
proc freq data = sashelp.cars;
table msrp;
format msrp range.;
run;
Example 2 :
Same as with example 1. But you are asked to create a new variable called TSRP based on the following conditions applied in MSRP variable.
Values greater than 40,000 should be labelled 'High'
Values between 26,000 and 40,000 should be labelled 'Medium'
Else 'Low'
Solution : 
proc format;
value range
40000-high='High'
26000-< 40000='Medium'
other ='Low';
run;
data temp;
set sashelp.cars;
TSRP = put(msrp, range.);run;
Example 3 : Subset Data

Method 1 : 
data temp;
set sashelp.cars;
where put(msrp, range.) IN ('High' 'Medium');
run;
Method 2 : 
data temp (where = (tsrp IN ('High' 'Medium')));
set sashelp.cars;
tsrp = put(msrp, range.);
run;
Method 3 :
proc sql;
select *,
put(msrp, range.) as tsrp
from sashelp.cars
where calculated tsrp in ('High', 'Medium');
quit; 
ListenData Logo
Spread the Word!
Share
Related Posts
About Author:
Deepanshu Bhalla

Deepanshu founded ListenData with a simple objective - Make analytics easy to understand and follow. He has over 10 years of experience in data science. During his tenure, he has worked with global clients in various domains like Banking, Insurance, Private Equity, Telecom and Human Resource.

3 Responses to "SAS : Power of PROC FORMAT"
  1. How to sum saary department wise using proc format

    ReplyDelete
  2. How do you make a format library auto-start for each new SAS session?

    ReplyDelete

Next → ← Prev
Looks like you are using an ad blocker!

To continue reading you need to turnoff adblocker and refresh the page. We rely on advertising to help fund our site. Please whitelist us if you enjoy our content.