BY Statement

BY variables ;

You can use a BY statement with the NLMIXED procedure to obtain separate analyses on DATA= data set observations in groups defined by the BY variables. This means that, unless TECH=NONE, an optimization problem is solved for each BY group separately. When a BY statement appears, the procedure expects the input DATA= data set to be sorted in the order of the BY variables. If your input data set is not sorted in ascending order, use one of the following alternatives:

  • Use the SORT procedure with a similar BY statement to sort the data.

  • Use the BY statement option NOTSORTED or DESCENDING in the BY statement for the NLMIXED procedure. As a cautionary note, 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.

  • Use the DATASETS procedure (in Base SAS software) to create an index on the BY variables.

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.