BookmarkSubscribeRSS Feed
gnt1986
Calcite | Level 5

I have a dataset;

proc sql;

create table test as

select cat_desc

from test1;

quit;

output is

cat_desc

Eastern Region

Western Region

North

South

Eastern Region

Western Region

South

I need to assign an Id to the variables

data have;

input cat_id 1 cat_desc $2-20;

datalines;

1 Eastern Region

2 Western Region

3 North

4 South

;

run;

How can I add the cat_id in data have and apply it to  the initial dataset?

2 REPLIES 2
MeghnaMorlidhar
Calcite | Level 5

hello,

Can you tell me that in your data 'have' what you have shown in datalines is  your desired output or you want to display regions eg. eastern region by 1?(just for display : Go for Proc Format).

  • IF you have requirement of assigning a variable in proc sql in select you can use Case Expression select(cat_desc) in that use  when 'eastern region' then 1 and make everything like that and end case expression by end as Cat_id in the select clause.
  • Remain other code as it is, in that case you dont even need to create any new data.
gnt1986
Calcite | Level 5

For example if proc sql you see cat_desc Eastern Region.  However it has not cat_id.  Now look in data have.  I have replicated the cat_des and have added the cat_id.  I need to assign cat_id to cat_desc so I can use the original proc sql datastep in a program to manipulate the variables

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

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 lock in 2025 pricing—just $495!

Register now

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1195 views
  • 0 likes
  • 2 in conversation