# Estimating adjusted risk ratios in binary data using Poisson regression

I am interested in estimating an adjusted risk ratio, analogous to how one estimates an adjusted odds ratio using logistic regression. Some literature (e.g., this) indicates that using Poisson regression with Huber-White standard errors is a model-based way to do this

I have not found literature on how adjusting for continuous covariates affects this. The following simple simulation demonstrates that this issue is not so straightforward:

``````arr <- function(BLR,RR,p,n,nr,ce)
{
B = rep(0,nr)
for(i in 1:nr){
b <- runif(n)<p
x <- rnorm(n)
pr <- exp( log(BLR) + log(RR)*b + ce*x)
y <- runif(n)<pr
model <- glm(y ~ b + x, family=poisson)
B[i] <- coef(model)
}
return( mean( exp(B), na.rm=TRUE )  )
}

set.seed(1234)
arr(.3, 2, .5, 200, 100, 0)
 1.992103
arr(.3, 2, .5, 200, 100, .1)
 1.980366
arr(.3, 2, .5, 200, 100, 1)
 1.566326
``````

In this case, the true risk ratio is 2, which is recovered reliably when the covariate effect is small. But, when the covariate effect is large, this gets distorted. I assume this arises because the covariate effect can push up against the upper bound (1) and this contaminates the estimation.

I have looked but have not found any literature on adjusting for continuous covariates in adjusted risk ratio estimation. I am aware of the following posts on this site:

but they do not answer my question. Are there any papers on this? Are there any known cautions that should be exercised?

``````model <- glm(y ~ b + x, family=binomial(logit)