# [R] Linear relative rate / excess relative risk models

David Winsemius dwinsemius at comcast.net
Thu Jan 9 04:32:53 CET 2014

```On Jan 8, 2014, at 3:22 PM, Wollschlaeger, Daniel wrote:

> If I understand you correctly, that is exactly the approach taken by
> Atkinson & Therneau: They get the baseline rates from published rate
> tables from the general population, multiply them by the appropriate
> person-time from their data to get expected counts, and use this as
> offset.
>
> Unfortunately, I won't have comparable baseline rate tables. And
> while I could fit a separate model only to the unexposed group for
> expected counts, I'd prefer to fit both factors (lambda0 and 1+ERR)
> simultaneously - as it is typically done in the existing literature.

If you would describe your data situation more completely (ideally
with a reproducible example) you might get a better answer. It's also
considered polite on this mailing list to include the email chain, so
appending original question:

--
David

>
> Best, Daniel
>
> ________________________________________
> Von: David Winsemius [dwinsemius at comcast.net]
> Gesendet: Mittwoch, 8. Januar 2014 19:06
> An: Wollschlaeger, Daniel
> Cc: r-help at r-project.org
> Betreff: Re: [R] Linear relative rate / excess relative risk models
>
> I would fit a Poisson model to the dose-response data with offsets
> for the baseline expecteds.

David Winsemius, MD
Alameda, CA, USA

============================
My question is how I can fit linear relative rate models (= excess
relative risk models, ERR) using R. In radiation epidemiology, ERR
models are used to analyze dose-response relationships for event rate
data and have the following form [1]:

lambda = lambda0(z, alpha) * (1 + ERR(x, beta))

* lambda is the event rate
* lambda0 is the baseline rate function for non-exposed persons and
depends on covariates z with parameters alpha
* ERR is the excess relative risk function for exposed persons and
depends on covariates x (among them dose) with parameters beta
* lambda/lambda0 = 1 + ERR is the relative rate function

Often, the covariates z are a subset of the covariates x (like sex and
age). lambda is assumed to be log-linear in lambda0, and ERR typically
has a linear (or lin-quadratic) dose term as well as a log-linear
modifying term with other covariates:

lambda0 = exp(alpha0 + alpha1*z1 + alpha2*z2 + ...)
ERR = beta0*dose * exp(beta1*x1 + beta2*x2 + ...)

The data is often grouped in form of life tables with the observed
event counts and person-years (pyr) for each cell that results from
categorizing and cross-classifying the covariates. The counts are
assumed to have a Poisson-distribution with mean mu = lambda*pyr, and
the usual Poisson-likelihood is used. The interest is less in lambda0,
but in inference on the dose coefficient beta0 and on the modifier
coefficients beta.

In the literature, the specialized Epicure program is almost
exclusively used. Last year, a similar question on R-sig-Epi [2] did
not lead to a successful solution (I contacted the author). Atkinson &
Therneau in [3] discuss excess risk models but get lambda0 separately
from external data instead of fitting lambda0 as a log-linear term.
Some R packages sound promising to me (eg., gnm, timereg) but I
currently don't see how to correctly specify the model.

Any help on how to approach ERR models in R is highly appreciated!
With many thanks and best regards

```