Previous Page | Next Page

The STDIZE Procedure

BY Statement
BY variables ;

You can specify a BY statement with PROC STDIZE to obtain separate analyses on observations in groups defined by the BY variables. When a BY statement appears, the procedure expects the input data set to be sorted in order of the BY variables.


If your input data set is not sorted in ascending order, use one of the following alternatives:

  • Sort the data by using the SORT procedure with a similar BY statement.

  • Specify the BY statement option NOTSORTED or DESCENDING in the BY statement for PROC STDIZE. The NOTSORTED option does not mean that the data are unsorted but rather that the data are arranged in groups (according to values of the BY variables) and that these groups are not necessarily in alphabetical or increasing numeric order.

  • Create an index on the BY variables by using the DATASETS procedure.

When you specify the option METHOD=IN(), the following rules are applied to BY-group processing:

  • If the data set does not contain any of the BY variables, the entire DATA= data set is standardized by the location and scale measures (along with the constants for addition and multiplication) in the data set.

  • If the data set contains some, but not all, of the BY variables or if some BY variables do not have the same type or length in the data set that they have in the DATA= data set, PROC STDIZE displays an error message and stops.

  • If all of the BY variables appear in the data set with the same type and length as in the DATA= data set, each BY group in the DATA= data set is standardized using the location and scale measures (along with the constants for addition and multiplication) from the corresponding BY group in the data set. The BY groups in the data set must be in the same order in which they appear in the DATA= data set. All BY groups in the DATA= data set must also appear in the data set. If you do not specify the NOTSORTED option, some BY groups can appear in the data set but not in the DATA= data set; such BY groups are not used in standardizing data.

For more information about the BY statement, see SAS Language Reference: Concepts. For more information about the DATASETS procedure, see the Base SAS Procedures Guide.

Previous Page | Next Page | Top of Page