BLUP Statement
The BLUP statement creates a CAS data table that contains the best linear unbiased estimation (BLUE) of fixed effects and the best linear unbiased prediction (BLUP) of random effects. To use the BLUP statement, you must also use the PARMS statement to specify fixed values for all covariance parameters. When you use the BLUP statement, the ODS IterHistory table displays solver iterations that are used for BLUP solutions rather than displaying optimization iterations.
You must specify the following option:
-
OUT=CAS-libref.data-table
names the output data table for PROC LMIXED to use. You must specify this option before any other options. CAS-libref.data-table is a two-level name, where
- CAS-libref
refers to a collection of information that is defined in the LIBNAME statement and includes the caslib, which includes a path to where the data table is to be stored, and a session identifier, which defaults to the active session but which can be explicitly defined in the LIBNAME statement. For more information about CAS-libref, see the section Using CAS Sessions and CAS Engine Librefs.
- data-table
specifies the name of the output data table.
You can also specify the following options:
-
ITPRINT=number
displays that the iteration history after every number of iterations. By default, ITPRINT=10, which means the procedure displays the iteration history for every 10 iterations.
-
MAXITER=number
specifies the maximum number of iterations. The default value is the number of parameters in the OUT= data table plus 2.
-
SOLVER=DIRECT | IOC | IOD
specifies the solver to use for BLUP solutions.
- DIRECT
requires storing mixed model equations (MMEQ) in memory and computing the Cholesky decomposition of MMEQ. This solver is the most accurate, but it is the most inefficient in terms of speed and memory.
- IOC
requires storing mixed model equations in memory and iterates on MMEQ to solve for the solutions.This solver is the most efficient in terms of speed.
- IOD
does not build mixed model equations; instead it iterates on data to solve for the solutions. This solver is most efficient in terms of memory.
By default, SOLVER=IOC.
-
TOL=number
specifies the tolerance value. The default value is the square root of machine precision.