PROC GLIMMIX: AN OVERVIEW

advertisement
PROC GLIMMIX: AN OVERVIEW
By William E. Jackman
PROC GLIMMIX: AN OVERVIEW
•
•
•
•
•
A new SAS/STAT Product
Experimental in SAS 9.1
Production in SAS 9.2.
%GLIMMIX macro
Combines and extends statistical features found
in other SAS procedures
• Part of a succession of SAS procedures which
have extended the General Linear Model (GLM)
PROC GLIMMIX: AN OVERVIEW
•
•
•
•
•
•
•
•
Regression Analysis Basics
Y = B0 + B1 X1 +B2 X2 ... + Bn Xn + e
y = Xβ + ε (matrix notation)
ε ~ N(0, α2 In)
Estimation by ordinary least squares (OLS).
Essence of the General Linear Model (GLM)
Y's and the X's go by several names
Covariates
PROC GLIMMIX: AN OVERVIEW
• The GLM underlies PROC REG and PROC GLM
• Both procedures use OLS to fit the GLM to
data with continuous response variable
• Same assumptions about residuals
• PROC REG has advantages for continuous
effects (regressors).
• PROC GLM has advantages for discrete effects
(regressors).
PROC GLIMMIX: AN OVERVIEW
• Indicator (dummy) variables and interactions
* PROC REG: must be created in data step
* PROC GLM: use class & model statements
• Which Procedure to use?
* Interested primarily in effect of continuous
variables (covariates)?
* Interested primarily in effect of grouping
variables?
PROC GLIMMIX: AN OVERVIEW
• The generalized linear model (GzLM) extends
(or generalizes) the GLM.
• Presented in 1972; expanded in 1989.
• Non-normal data from exponential family
• Linearity is achieved through the link function.
• Implemented, for example, in PROC GENMOD
• PROC GENMOD can also handle correlated
residuals.
PROC GLIMMIX: AN OVERVIEW
• General form of the GENMOD procedure
• PROC GENMOD options ;
• CLASS variables ;
• MODEL response=effects / dist= link=
options ;
• REPEATED SUBJECT=subjects-effects /
options ;
• RUN ;
PROC GLIMMIX: AN OVERVIEW
Example of the GENMOD procedure
for Poisson regression
proc genmod data=skin ;
class city age ;
model cases=city age / offset=log_pop
dist=poi link=log ;
run ;
where log_pop = log of the population
PROC GLIMMIX: AN OVERVIEW
The generalized linear model (GzLM)
•
•
•
•
Canonical link functions most common.
Obtained from probability density function
Default in PROC GENMOD
For the Poisson distribution the default link
function is the log of the response variable.
• log(μ) = Xβ
• Inverse link functions
• μ = eη
PROC GLIMMIX: AN OVERVIEW
Logistic Regression: A special case of the
generalized linear model (GzLM)
•
•
•
•
•
•
Response variable from binomial distribution
Part of the exponential family so GzLM applies
Link function is the logit.
logit(pi) = ln(pi / (1-pi))
Can be done with PROC GENMOD
Input from David Schlotzhauer of SAS Institute
PROC GLIMMIX: AN OVERVIEW
FURTHER EXTENSIONS OF THE GLM
•
•
•
•
GLM and GzLM cannot handle random effects.
Fixed effects-interest only in levels specified
Random effects-inference to other levels
PROC GENMOD and PROC LOGISTIC cannot
handle random effects.
PROC GLIMMIX: AN OVERVIEW
PROC MIXED: An extension of the GLM
• Can handle random effects and correlated
errors
• fixed effects only model
• y = Xβ + ε
• mixed model
• y = Xβ + Zγ + ε
PROC GLIMMIX: AN OVERVIEW
Mixed models distinguish between G-side
random effects and R-side random effects.
• G-side random effects correspond to
covariates (regressors) in the model which are
random.
• R-side random effects correspond to the
residuals in the model.
PROC GLIMMIX: AN OVERVIEW
Example of PROC MIXED syntax
proc mixed ;
class id time gender ;
model z = gender age gender*age ;
random intercept / subject=id ;
*** G-side effects go here. ;
repeated time /subject=id type=ar(1) ;
*** R-side effects go here. ;
run ;
PROC GLIMMIX: AN OVERVIEW
PROC MIXED: a linear mixed model (LMM)
• PROC MIXED allows for random intercepts for
each subject.
• models the correlation in the repeated measures
within each subject.
• has rich variety of covariance matrices for
dealing with correlated residuals.
• Unlike GzLM’s, LMM’s require a normally
distributed response variable.
PROC GLIMMIX: AN OVERVIEW
• PROC GLIMMIX - PUTTING IT ALL TOGETHER
• A Generalized Linear Mixed Model (GzLMM)
• Combines and extends features of GzLM’s and
LMM’s
• Enables modeling random effects and
correlated errors for non-normal data
PROC GLIMMIX: AN OVERVIEW
The Generalized Linear Mixed Model (GzLMM)
• A linear predictor can contain random effects:
η = Xβ + Z γ
• The random effects are normally distributed
• The conditional mean, μ|γ, relates to the linear predictor through a
link function:
g(μ|γ) = η
• The conditional distribution (given γ) of the data belongs to the
exponential family of distributions.
PROC GLIMMIX: AN OVERVIEW
Other new features of PROC GLIMMIX include:
• low-rank smoothing based on mixed models
• new features for LS-means comparisons and
display.
• SAS programming statements allowed within the
procedure
• Fits models to multivariate data with different
distributions or links
PROC GLIMMIX: AN OVERVIEW
General form of the GLIMMIX procedure:
• PROC GLIMMIX options ;
•
programming statements ;
•
CLASS variables ;
•
MODEL response=fixed-effects / DIST= LINK =
options ;
•
RANDOM random-effects / options ;
•
RANDOM _RESIDUAL_ / options ;
• RUN ;
PROC GLIMMIX: AN OVERVIEW
Like other mixed models, PROC GLIMMIX
distinguishes between G-side random
effects and R-side random effects.
• G-side random effects correspond to
covariates in the model which are random.
• R-side random effects correspond to the
residuals in the model.
PROC GLIMMIX: AN OVERVIEW
Example of a GzLMM using PROC GLIMMIX
for Logistic Regression with Random Effects
• proc glimmix data=example ;
•
class trt clinic ;
•
model y=trt / dist=binomial link=logit ;
•
random clinic trt*clinic ;
•
*** random intercept trt / subject=clinic ;
• run ;
PROC GLIMMIX: AN OVERVIEW
• This example cannot be handled by PROC
LOGISTIC since clinic is a random effect.
• For logistic regression with fixed effect only,
PROC GLIMMIX or PROC LOGISTIC can be
used. Which should you use?
• More input from David Schlotzhauer of the
SAS Institute.
PROC GLIMMIX: AN OVERVIEW
Parameters Estimation Methods in PROC GLIMMIX
• The GLIMMIX procedure has two basic modes of
parameter estimation: GLM-mode and GLMMmode.
• In GLM-mode, the data is never correlated and there
can be no G-side random effect.
• In the GLMM-mode, there might be random effects
and/or correlated data.
PROC GLIMMIX: AN OVERVIEW
Parameter Estimation
for generalized linear models
• Normal distribution: restricted maximum
likelihood
• All other known distributions: maximum
likelihood
• Unknown distributions: quasi-likelihood
PROC GLIMMIX: AN OVERVIEW
Parameter Estimation for generalized linear
models with overdispersion
• Parameters are estimated using maximum
likelihood
• An overdispersion parameter can be
estimated from the Pearson statistic
PROC GLIMMIX: AN OVERVIEW
Parameter Estimation
for generalized linear mixed models
• Pseudo-likelihood
PROC GLIMMIX: AN OVERVIEW
Using PROC GLIMMIX for Linear Mixed Models
• In this example, the response variable is normally-distributed.
• Proc glimmix data= grass ;
•
Class method variety ;
•
Model yield = method / dist=normal ;
•
Random variety method*variety ;
• run ;
• PROC GLIMMIX uses the residual/restricted maximum likelihood as
does PROC MIXED.
PROC GLIMMIX: AN OVERVIEW
• PROC GLIMMIX can do much of what PROC
LOGISTIC, PROC MIXED, PROC REG, and PROC
GLM can do.
• Could be viewed as a “super PROC”
• Input from Jill Tao of the SAS Institute
PROC GLIMMIX: AN OVERVIEW
PROC GLIMMIX versus PROC MIXED
Closely related but important differences
• PROC GLIMMIX is not PROC MIXED with a LINK= and a DIST=
option.
• PROC GLIMMIX models non-normal data. PROC MIXED does not.
• PROC GLIMMIX allows programming statements. PROC MIXED
does not.
• PROC GLIMMIX uses the RANDOM statement to model R-side
random effects. PROC MIXED uses the REPEATED statement to
model R-side random effects.
• PROC GLIMMIX does not support the Kronecker and heterogeneous
covariance structures as supported by PROC MIXED.
PROC GLIMMIX: AN OVERVIEW
•
•
•
•
PROC GLIMMIX versus PROC GENMOD
PROC GLIMMIX
fits unit-specific models with the G-side random effects
fits population-average models without the G-side
effects. (Without the G-side effects, there is no way to
condition the response and make the estimates unitspecific.)
provides sandwich estimators of covariance of fixed
effects through the EMPIRICAL option when the model
is processed by subjects.
computes the parameter estimates by a pseudolikelihood method.
PROC GLIMMIX: AN OVERVIEW
PROC GLIMMIX versus PROC GENMOD
PROC GENMOD
• cannot accommodate random effects
• fits only population-average models
• computes the parameter estimates by a
moment-based method.
PROC GLIMMIX: AN OVERVIEW
Applications Using the GLIMMIX Procedure
(from "Statistical Analysis with the GLIMMIX Procedure")
• Poisson Regression with Random Effects
• An example of Beta Regression
• Repeated Measures Data with Discrete
Response
• Introduction to Radial Smoothing
Applications are explained in detail in the SAS course.
PROC GLIMMIX: AN OVERVIEW
Fitting Models To Multivariate Data In Which
Observations Do Not All Have The Same
Distribution Or Link
• EXAMPLE: JOINT MODELS FOR BINARY AND
POISSON DATA
(from a paper by Oliver Schabenberger of the
SAS Institute)
PROC GLIMMIX: AN OVERVIEW
data joint;
length dist $7;
input d$ patient age OKstatus response @@;
if d = ’B’ then dist=’Binary’;
else dist=’Poisson’;
datalines; (only 3 lines shown)
B 1 78 1 0
P 1 78 1 9
B 2 60 1 0
P 2 60 1 4
B 3 68 1 1
P 3 68 1 7
B 4 62 0 1
P 4 62 0 35
B 5 76 0 0
P 5 76 0 9
B 6 76 1 1
P 6 76 1 7
PROC GLIMMIX: AN OVERVIEW
proc glimmix data=joint;
class patient dist;
model response(event=’1’) =
dist dist*age dist*OKstatus /
noint s dist=byobs(dist);
random int / subject=patient;
run;
PROC GLIMMIX: AN OVERVIEW
• The previous slide showed modeling
correlations through G-side random effects. It
could also be done through R-side random
effects. This is presented in the SAS course
“Statistical Analysis with the GLIMMIX
Procedure” which expands upon this example.
Download