[R] relative risk regression with survey data

Thomas Lumley tlumley at u.washington.edu
Tue Sep 14 04:40:54 CEST 2010


On Mon, 13 Sep 2010, Daniel Nordlund wrote:

> I have been asked to look at options for doing relative risk regression on 
> some survey data.  I have a binary DV and several predictor / adjustment 
> variables.  In R, would this be as "simple" as using the survey package to 
> set up an appropriate design object and then running svyglm with 
> family=binomial(log) ?  Any other suggestions for covariate adjustment of 
> relative risk estimates?  Any and all suggestions welcomed.

If the fitted values don't get too close to 1 then svyglm(  ,family=quasibinomial(log)) will do it.

The log-binomial model is very non-robust when the fitted values get close to 1, and there is some controversy over the best approach.  You can still use svyglm(  ,family=quasibinomial(log)) but you will probably need to set the number of iterations much higher (perhaps 200).

Alternatively, you can use nonlinear least squares  [svyglm(, family=gaussian(log))] or other quasilikelihood approaches, such as family=quasipoisson(log).  These are all consistent for the same parameter if the model is correctly specified and are much more robust to x-outliers.  I rather like nonlinear least squares, because it's easy to explain.

      -thomas


Thomas Lumley
Professor of Biostatistics
University of Washington, Seattle



More information about the R-help mailing list