
ADJDFE=SOURCE  ROW

specifies how denominator degrees of freedom are determined when pvalues and confidence limits are adjusted for multiple comparisons with the ADJUST=
option. When you do not specify the ADJDFE= option, or when you specify ADJDFE=SOURCE, the denominator degrees of freedom
for multiplicityadjusted results are the denominator degrees of freedom for the LSmean effect in the "Type 3 Tests of Fixed
Effects" table. When you specify ADJDFE=ROW, the denominator degrees of freedom for multiplicityadjusted results correspond
to the degrees of freedom displayed in the DF
column of the "Differences of Least Squares Means" table.
The ADJDFE=ROW setting is particularly useful if you want multiplicity adjustments to take into account that denominator degrees
of freedom are not constant across LSmean differences. This can be the case, for example, when the DDFM=
SATTERTHWAITE or DDFM=
KENWARDROGER degreesoffreedom method is in effect.
In oneway models with heterogeneous variance, combining certain ADJUST=
options with the ADJDFE=ROW option corresponds to particular methods of performing multiplicity adjustments in the presence
of heteroscedasticity. For example, the following statements fit a heteroscedastic oneway model and perform Dunnett’s T3
method (Dunnett, 1980), which is based on the studentized maximum modulus (ADJUST=SMM):
proc mixed;
class A;
model y = A / ddfm=satterth;
repeated / group=A;
lsmeans A / adjust=smm adjdfe=row;
run;
If you combine the ADJDFE=ROW option with ADJUST=
SIDAK, the multiplicity adjustment corresponds to the T2 method of Tamhane (1979), while ADJUST=
TUKEY corresponds to the method of GamesHowell (Games and Howell, 1976). Note that ADJUST=
TUKEY gives the exact results for the case of fractional degrees of freedom in the oneway model, but it does not take into
account that the degrees of freedom are subject to variability. A more conservative method, such as ADJUST=
SMM, might protect the overall error rate better.
Unless the ADJUST=
option of the LSMEANS statement is specified, the ADJDFE= option has no effect.

ADJUST=BON
ADJUST=DUNNETT
ADJUST=SCHEFFE
ADJUST=SIDAK
ADJUST=SIMULATE<(simoptions)>
ADJUST=SMM  GT2
ADJUST=TUKEY

requests a multiple comparison adjustment for the pvalues and confidence limits for the differences of LSmeans. By default, PROC MIXED adjusts all pairwise differences unless you specify
ADJUST=DUNNETT, in which case PROC MIXED analyzes all differences with a control level. The ADJUST= option implies the DIFF
option.
The BON (Bonferroni) and SIDAK adjustments involve correction factors described in Chapter 45: The GLM Procedure, and Chapter 67: The MULTTEST Procedure; also see Westfall and Young (1993) and Westfall et al. (1999). When you specify ADJUST=TUKEY and your data are unbalanced, PROC MIXED uses the approximation described in Kramer (1956). Similarly, when you specify ADJUST=DUNNETT and the LSmeans are correlated, PROC MIXED uses the factoranalytic covariance
approximation described in Hsu (1992). The preceding references also describe the SCHEFFE and SMM adjustments.
The SIMULATE adjustment computes adjusted pvalues and confidence limits from the simulated distribution of the maximum or maximum absolute value of a multivariate t random vector. All covariance parameters except the residual variance are fixed at their estimated values throughout the
simulation, potentially resulting in some underdispersion. The simulation estimates q, the true quantile, where is the confidence coefficient. The default is 0.05, and you can change this value with the ALPHA=
option in the LSMEANS statement.
The number of samples is set so that the tail area for the simulated q is within of with % confidence. In equation form,
where is the simulated q and F is the true distribution function of the maximum; see Edwards and Berry (1987) for details. By default, = 0.005 and = 0.01, placing the tail area of within 0.005 of 0.95 with 99% confidence. The ACC= and EPS= simoptions reset and , respectively; the NSAMP= simoption sets the sample size directly; and the SEED= simoption specifies an integer used to start the pseudorandom number generator for the simulation. If you do not specify a seed, or
if you specify a value less than or equal to zero, the seed is generated from reading the time of day from the computer clock.
For additional descriptions of these and other simulation options, see the section LSMEANS Statement in Chapter 45: The GLM Procedure.

ALPHA=number

requests that a ttype confidence interval be constructed for each of the LSmeans with confidence level 1 – number. The value of number must be between 0 and 1; the default is 0.05.

AT variable = value
AT (variablelist)= (valuelist)
AT MEANS

enables you to modify the values of the covariates used in computing LSmeans. By default, all covariate effects are set equal to their mean values for computation of standard LSmeans. The AT
option enables you to assign arbitrary values to the covariates. Additional columns in the output table indicate the values
of the covariates.
If there is an effect containing two or more covariates, the AT option sets the effect equal to the product of the individual
means rather than the mean of the product (as with standard LSmeans calculations). The AT MEANS option sets covariates equal
to their mean values (as with standard LSmeans) and incorporates this adjustment to crossproducts of covariates.
As an example, consider the following invocation of PROC MIXED:
proc mixed;
class A;
model Y = A X1 X2 X1*X2;
lsmeans A;
lsmeans A / at means;
lsmeans A / at X1=1.2;
lsmeans A / at (X1 X2)=(1.2 0.3);
run;
For the first two LSMEANS statements, the LSmeans coefficient for X1
is (the mean of X1
) and for X2
is (the mean of X2
). However, for the first LSMEANS statement, the coefficient for X1
*X2
is , but for the second LSMEANS statement, the coefficient is . The third LSMEANS statement sets the coefficient for X1
equal to 1.2 and leaves it at for X2
, and the final LSMEANS statement sets these values to 1.2 and 0.3, respectively.
If a WEIGHT variable is present, it is used in processing AT variables. Also, observations with missing dependent variables
are included in computing the covariate means, unless these observations form a missing cell and the FULLX
option in the MODEL
statement is not in effect. You can use the E
option in conjunction with the AT option to check that the modified LSmeans coefficients are the ones you want.
The AT option is disabled if you specify the BYLEVEL
option.

BYLEVEL

requests PROC MIXED to process the OM data set by each level of the LSmean effect (LSMEANS effect) in question. For more details, see the OM
option later in this section.

CL

requests that ttype confidence limits be constructed for each of the LSmeans. The confidence level is 0.95 by default; this can be changed with the ALPHA=
option.

CORR

displays the estimated correlation matrix of the least squares means as part of the "Least Squares Means" table.

COV

displays the estimated covariance matrix of the least squares means as part of the "Least Squares Means" table.

DF=number

specifies the degrees of freedom for the t test and confidence limits. The default is the denominator degrees of freedom taken from the "Tests of Fixed Effects" table corresponding
to the LSmeans effect unless the DDFM=
SATTERTHWAITE or DDFM=
KENWARDROGER option is in effect in the MODEL
statement. For these DDFM= methods, degrees of freedom are determined separately for each test; see the DDFM=
option for more information.

DIFF<=difftype>
PDIFF<=difftype>

requests that differences of the LSmeans be displayed. The optional difftype specifies which differences to produce, with possible values being ALL, CONTROL, CONTROLL, and CONTROLU. The difftype ALL requests all pairwise differences, and it is the default. The difftype CONTROL requests the differences with a control, which, by default, is the first level of each of the specified LSMEANS effects.
To specify which levels of the effects are the controls, list the quoted formatted values in parentheses after the keyword
CONTROL. For example, if the effects A
, B
, and C
are classification variables, each having two levels, 1 and 2, the following LSMEANS statement specifies the (1,2) level
of A
*B
and the (2,1) level of B
*C
as controls:
lsmeans A*B B*C / diff=control('1' '2' '2' '1');
For multiple effects, the results depend upon the order of the list, and so you should check the output to make sure that
the controls are correct.
Twotailed tests and confidence limits are associated with the CONTROL difftype. For onetailed results, use either the CONTROLL or CONTROLU difftype. The CONTROLL difftype tests whether the noncontrol levels are significantly smaller than the control; the upper confidence limits for the control
minus the noncontrol levels are considered to be infinity and are displayed as missing. Conversely, the CONTROLU difftype tests whether the noncontrol levels are significantly larger than the control; the upper confidence limits for the noncontrol
levels minus the control are considered to be infinity and are displayed as missing.
If you want to perform multiple comparison adjustments on the differences of LSmeans, you must specify the ADJUST= option.
The differences of the LSmeans are displayed in a table titled "Differences of Least Squares Means." The ODS table name is
Diffs.

E

requests that the matrix coefficients for all LSMEANS effects be displayed. The ODS name of this " Matrix Coefficients" table is Coef.

OM<=OMdataset>
OBSMARGINS<=OMdataset>

specifies a potentially different weighting scheme for the computation of LSmeans coefficients. The standard LSmeans have equal coefficients across classification effects; however,
the OM option changes these coefficients to be proportional to those found in OMdataset. This adjustment is reasonable when you want your inferences to apply to a population that is not necessarily balanced but
has the margins observed in OMdataset.
By default, OMdataset is the same as the analysis data set. You can optionally specify another data set that describes the population for which
you want to make inferences. This data set must contain all model variables except for the dependent variable (which is ignored
if it is present). In addition, the levels of all CLASS
variables must be the same as those occurring in the analysis data set. Specifying an OMdataset enables you to construct arbitrarily weighted LSmeans.
In computing the observed margins, PROC MIXED uses all observations for which there are no missing or invalid independent
variables, including those for which there are missing dependent variables. Also, if OMdataset has a WEIGHT
variable, PROC MIXED uses weighted margins to construct the LSmeans coefficients. If OMdataset is balanced, the LSmeans are unchanged by the OM option.
The BYLEVEL
option modifies the observedmargins LSmeans. Instead of computing the margins across all of the OMdataset, PROC MIXED computes separate margins for each level of the LSMEANS effect in question. In this case the resulting LSmeans
are actually equal to raw means for fixedeffects models and certain balanced randomeffects models, but their estimated standard
errors account for the covariance structure that you have specified. If the AT
option is specified, the BYLEVEL
option disables it.
You can use the E
option in conjunction with either the OM or BYLEVEL
option to check that the modified LSmeans coefficients are the ones you want. It is possible that the modified LSmeans
are not estimable when the standard ones are, or vice versa. Nonestimable LSmeans are noted as "Nonest" in the output.

PDIFF

is the same as the DIFF
option.

SINGULAR=number

tunes the estimability checking as documented for the SINGULAR=
option in the CONTRAST
statement.

SLICE= fixedeffect  (fixedeffects)

specifies effects by which to partition interaction LSMEANS effects. This can produce what are known as tests of simple effects (Winer, 1971). For example, suppose that A
*B
is significant, and you want to test the effect of A
for each level of B
. The appropriate LSMEANS statement is as follows:
lsmeans A*B / slice=B;
This code tests for the simple main effects of A
for B
, which are calculated by extracting the appropriate rows from the coefficient matrix for the A
*B
LSmeans and by using them to form an F test. See the section Inference and Test Statistics for more information about this F test.
The SLICE option produces a table titled "Tests of Effect Slices." The ODS table name is Slices.