SAS Variable Lists


Definition

A SAS variable list is an abbreviated method of referring to a list of variable names . SAS allows you to use the following variable lists:

  • numbered range lists

  • name range lists

  • name prefix lists

  • special SAS name lists.

With the exception of the numbered range list, you refer to the variables in a variable list in the same order that SAS uses to keep track of the variables. SAS keeps track of active variables in the order that the compiler encounters them within a DATA step, whether they are read from existing data sets, an external file, or created in the step. In a numbered range list, you can refer to variables that were created in any order, provided that their names have the same prefix.

You can use variable lists in many SAS statements and data set options, including those that define variables. However, they are especially useful after you define all of the variables in your SAS program because they provide a quick way to reference existing groups of data.

Note  

Only the numbered range list is allowed in the RENAME= option.

Numbered Range Lists

Numbered range lists require you to have a series of variables with the same name, except for the last character or characters , which are consecutive numbers . For example, the following two lists refer to the same variables:

 x1,x2,x3,...,xn   x1-xn 

In a numbered range list, you can begin with any number and end with any number as long as you do not violate the rules for user -supplied variable names and the numbers are consecutive.

For example, suppose you decide to give some of your numeric variables sequential names, as in VAR1, VAR2, and so on. Then, you can write an INPUT statement as follows :

 input idnum name $ var1-var3; 

Note that the character variable NAME is not included in the abbreviated list.

Name Range Lists

Name range lists rely on the order of variable definition, as shown in the following table:

Table 5.4: Name Range Lists

Variable list

Included variables

x-a

all variables in order of variable definition, from X to A inclusive.

x-numeric-a

all numeric variables from X to A inclusive.

x-character-a

all character variables from X to A inclusive.

You can use the VARNUM option in PROC CONTENTS to print the variables in the order of definition.

For example, consider the following INPUT statement:

 input idnum name $ weight pulse chins; 

In later statements you can use these variable lists:

 /* keeps only the numeric variables idnum, weight, and pulse */   keep idnum-numeric-pulse;   /* keeps the consecutive variables name, weight, and pulse */   keep name-pulse; 

Name Prefix Lists

Some SAS functions and statements allow you to use a name prefix list to refer to all variables that begin with a specified character string:

 sum(of SALES:) 

tells SAS to calculate the sum of all the variables that begin with "SALES," such as SALES_JAN, SALES_FEB, and SALES_MAR.

Special SAS Name Lists

Special SAS name lists include

_NUMERIC_

specifies all numeric variables that are already defined in the current DATA step.

_CHARACTER_

specifies all character variables that are currently defined in the current DATA step.

_ALL_

specifies all variables that are currently defined in the current DATA step.




SAS 9.1.3 Language Reference. Concepts
SAS 9.1.3 Language Reference: Concepts, Third Edition, Volumes 1 and 2
ISBN: 1590478401
EAN: 2147483647
Year: 2004
Pages: 258

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net