BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
Pritish
Quartz | Level 8
Hi,

I am having a big dataset with more than 50+ columns in Excel format. Column names are perfect but bit complicated so I thought of renaming the column name.

Can we rename column during the Proc Import procedure. Or do I need to create new dataset and use rename keyword ?

Please let me know and thanks in advance.
1 ACCEPTED SOLUTION

Accepted Solutions
CraigM
Calcite | Level 5

You can do this inline with the PROC IMPORT statement if you would like to.

 

On the OUT line:

  OUT=Library.Name (rename=VAR1=Column1 rename=VAR2=Column2 ... rename=VAR(N)=Column(N))

 

This has changed apparently from Col1 in the past to VAR1 currenlty in SAS 9.4.

View solution in original post

7 REPLIES 7
DataShare
SAS Employee
Check this

proc import
datafile="&ExcelFile"
out=ExcelDataSet ( rename=Col1=ColumnOne)
dbms=EXCEL;
DBSASLABEL=NO;
run;
Pritish
Quartz | Level 8
Hi,

I tried to use the code you provided. But it seems that there is no keyword DBSASLABEL in SAS. Are you refering to the keyword GetNames ?
DataShare
SAS Employee
Are you trying this with DBMS=EXCEL ?
Patrick
Opal | Level 21
Even though I like coding a lot I would use Enterprise Guide for such a task (if it's a once off job).

The import wizard creates all the code you need and you can also change column names and attributes in one of the steps (think it's step 3).

HTH
Patrick
LittlesasMaster
Obsidian | Level 7

you can simply use rename option , check this

 

proc import datafile="&file"
out=want(rename=(col11=new_var col22=new_var2))
dbms=xlsx replace;
getnames=yes;
run;

MikeFranz
Quartz | Level 8

So it seems like by using the "GETNAMES = YES" option, I was forcing SAS to create silly names that I was unable to reference. I was being silly, an easy work around was to change GETNAMES to NO, and then just rename the columns manually (there were only 26 columns, so it wasn't too bad.

 

Many thanks to everyone for their input.

 

Mike

CraigM
Calcite | Level 5

You can do this inline with the PROC IMPORT statement if you would like to.

 

On the OUT line:

  OUT=Library.Name (rename=VAR1=Column1 rename=VAR2=Column2 ... rename=VAR(N)=Column(N))

 

This has changed apparently from Col1 in the past to VAR1 currenlty in SAS 9.4.

hackathon24-white-horiz.png

The 2025 SAS Hackathon Kicks Off on June 11!

Watch the live Hackathon Kickoff to get all the essential information about the SAS Hackathon—including how to join, how to participate, and expert tips for success.

YouTube LinkedIn

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
  • 7 replies
  • 60557 views
  • 2 likes
  • 6 in conversation