You are on page 1of 2

Generalized Linear Models Using Proc Genmod

Generalized Linear Models can be fitted using SAS Proc Genmod. This procedure
allows you to fit models for binary outcomes, ordinal outcomes, and models for
other distributions in the exponential family (e.g., Poisson, negative binomial,
gamma). GEE (Generalized Estimating Equations) can be used to fit marginal models
with repeated measures, by using the repeated statement.

We will be using data from the Apple Tree Dental Plan for these examples. Apple
Tree Dental is a non-profit organization whose mission is to provide comprehensive
oral health care for people with special dental access needs. This data is for
elderly nursing home residents, and was collected as part of Grant R03DE16976-
01A1 ("Dental Utilization by Nursing Home Residents: 1986-2004", National
Institute of Dental and Craniofacial Research), Barbara J. Smith, Principal
Investigator. There are 987 patients in this database, with baseline ages from 55
to 102 years. They all entered the program in 1992, and were followed for a
maximum of 5 follow-up periods. Each period was from 0 days to 547 days long. A
participant could have had a period of zero days length if they came to the
program, had their initial dental visit, and then never returned for any follow-up
visits. We will be taking a look at the number of claims that these participants
made for diagnostic dental services during their first period with Apple Tree
Dental, and then over the five possible periods in the dataset. We are mainly
interested in comparing three different levels of functional dentition,
FUNCTDENT, 0: Edentulous, 1: < 20 teeth, and 2: >=20 teeth. We will also control
for other covariates in the analysis.

We first take a look at the distribution of the number of Diagnostic services,


NUM_DIAGNOSTIC, using histograms for each level of FUNCTDENT. As you can
see in the graphs below, the distributions are not normal, in fact, they are highly
skewed to the right. Note, that due to the nature of the data, there can be no
values less than zero.

proc format;
value functdent 0="Edentulous"
1="<20 Teeth"
2=">=20 Teeth";
run;

Generalized Linear Models Using SAS 1


proc sgpanel data=mylib.appletree;
where period=1;
panelby functdent / rows=1 novarname;
histogram Num_Diagnostic ;
format functdent functdent.;run;

One of the covariates that we wish to include in the model is the size (NBEDS) of
the facility where the person is staying. However, we want to use this as a
categorical predictor. We modify the dataset to create a new categorical variable,
NURSBEDS, which has a value of 1: 100 or fewer beds, 2: 101-150 beds, or 3: >150
beds in the nursing home where the participant lived.

We also want to be sure that we are comparing "rates" of dental services usage, by
taking into account the length of time included in the first follow-up period in our
model as an offset. We calculate the length of the period in years, rather than
days, so the estimated mean values for the outcome will be based on annual, rather
than daily rates of usage. We then take the natural log of the number of years,

Generalized Linear Models Using SAS 2

You might also like