Help using Base SAS procedures

Rename sets

Reply
Contributor
Posts: 60

Rename sets


Hi what is the command for renaming a set or column in dataset?

Frequent Contributor
Posts: 95

Re: Rename sets

RENAME will rename a variable's name.

data x;

  set sashelp.class;

  rename Age=AgeNew;

run;

If you want to do it in an existing data set you may use PROC DATASETS; This will change the variable name without recreating the data set.

proc datasets lib=work;

  modify abc;

    rename oldvar=newvvar;

  run;

quit;

Super User
Posts: 9,682

Re: Rename sets

Plus,

Change Dataset name :

proc datasets lib=work;

    change oldTableName=newTableName;

quit;

Ksharp

Contributor
Posts: 60

Re: Rename sets

I'm not looking to rename the:

-whole data set

or a specfic variable within the data.

I am looking to rename the column title. ie: frequency count.

Frequent Contributor
Posts: 95

Re: Rename sets

Then use LABEL statement.

proc datasets lib=work;

  modify abc;

    label oldvar="New Label";

  run;

quit;

Contributor
Posts: 60

Re: Rename sets

Capture.JPGThat doesn't seem to work.

Frequent Contributor
Posts: 95

Re: Rename sets

You will need to use the column/variable name right after LABEL.

Frequency Count seems to the label associated with this column.

Right click on the column labeled Frequency Count and check out the name of the variable.

You can also use Proc Contents for this data set to figure out the column/variable names.

proc datasets lib=work;

  modify abc;

    label VariableName="New Variable Label";

  run;

quit;

Contributor
Posts: 60

Re: Rename sets

I see. Thank you very helpful.

It presents:

Name: COUNT

Label: Frequency Count

How do I rename the 'COUNT'. I need to perform 3 different counts and merge them back into the dataset. Everytime I perform the merge I only receive one COUNT column, rather than 3.

Frequent Contributor
Posts: 95

Re: Rename sets

Use RENAME statement to rename the column.

Beware that when you change the column name the label of the column won't change.

proc freq data=sashelp.class;

  table Sex/out=class_summary;

run;

proc datasets lib=work nolist;

  modify class_summary;

    rename Count = New_Variable;

    label New_Variable = 'New Label';

  run;

quit;

Super User
Posts: 10,516

Re: Rename sets

You can rename them while merging:

then change the label

data want;

     merge have1 (rename=(count=count1))

               have2 (rename=(count=count2))

               have3 (rename=(count=count3))

    ;

    by mergevariablename;

    label

          count1 ='Meaning of count1'

          count2 ='Meaning of count2'

          count3 ='Meaning of count3'

   ;

run;

Ask a Question
Discussion stats
  • 9 replies
  • 1124 views
  • 1 like
  • 4 in conversation