RENAME= Data Set Option

Changes the name of a variable.
Valid in: DATA step and PROC steps
Category: Variable Control

Syntax

RENAME=(old-name-1=new-name-1 < ...old-name-n=new-name-n> )

Syntax Description

old-name
the variable that you want to rename.
new-name
the new name of the variable. It must be a valid SAS name.

Details

If you use the RENAME= data set option when you create a data set, the new variable name is included in the output data set. If you use RENAME= on an input data set, the new name is used in DATA step programming statements.
If you use RENAME= on an input data set that is used in a SAS procedure, SAS changes the name of the variable in that procedure. If you use RENAME= with WHERE processing such as a WHERE statement or a WHERE= data set option, the new name is applied before the data is processed. You must use the new name in the WHERE expression.
If you use RENAME= in the same DATA step with either the DROP= or the KEEP= data set option, the DROP= and the KEEP= data set options are applied before RENAME=. You must use the old name in the DROP= and KEEP= data set options. You cannot drop and rename the same variable in the same statement.
Note: The RENAME= data set option has an effect only on data sets that are opened in output mode.

Comparisons

  • The RENAME= data set option differs from the RENAME statement in the following ways:
    • The RENAME= data set option can be used in PROC steps and the RENAME statement cannot.
    • The RENAME statement applies to all output data sets. If you want to rename different variables in different data sets, you must use the RENAME= data set option.
    • To rename variables before processing begins, you must use a RENAME= data set option on the input data set or data sets.
  • Use the RENAME statement or the RENAME= data set option when program logic requires that you rename variables such as two input data sets that have variables with the same name. To rename variables as a file management task, use the DATASETS procedure.

Examples

Example 1: Renaming a Variable at Time of Output

This example uses RENAME= in the DATA statement to show that the variable is renamed at the time it is written to the output data set. The variable keeps its original name, X, during the DATA step processing:
data one;
  input x y z;
  datalines;
24 595 439
243 343 034
;

Example 2: Renaming a Variable at Time of Input

This example renames variable X to a variable named KEYS in the SET statement, which is a rename before DATA step processing. KEYS, not X, is the name to use for the variable for DATA step processing.
data three;
   set one(rename=(x=keys));
   z=keys+y;
run;

Example 3: Renaming a Variable for a SAS Procedure with WHERE Processing

This example renames variable Score1 to a variable named Score2 for the PRINT procedure. Because the new name is applied before the data is processed, the new name must be specified in the WHERE statement.
proc print data=test (rename=(score1=score2));
   where score2 gt 75;
run;

See Also

Statement:
RENAME Statement in SAS Statements: Reference
Procedure:
DATASETS Procedure in Base SAS Procedures Guide