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.

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 7 replies
  • 57946 views
  • 2 likes
  • 6 in conversation