BookmarkSubscribeRSS Feed
☑ This topic is solved. 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 2024

Innovate_SAS_Blue.png

Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.

If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website. 

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.

Get the $99 certification deal.jpg

 

 

Back in the Classroom!

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

View all other training opportunities.

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