# [R] inverse prediction and Poisson regression

Spencer Graves spencer.graves at pdf.com
Fri Jul 25 03:05:47 CEST 2003

```	  1.  If you provide a toy data set with, e.g., 5 observations, to
accompany your example, it would be much easier for people to try out
ideas and then give you a more solid response.

2.  Have you tried something like log(dose+0.5) or I(log(dose+0.5))
in your model statement in conjunction with "predict" or "predict.glm"
on the output from "glm"?

hope this helps.  spencer graves

Vincent Philion wrote:
> Hello to all, I'm a biologist trying to tackle a "fish"
(Poisson Regression) which is just too big for my modest
understanding of stats!!!
>
> Here goes...
>
> I want to find good literature or proper mathematical
procedure to calculate a confidence interval for an
inverse prediction of a Poisson regression using R.
>
> I'm currently trying to analyse a "dose-response"
experiment.
>
> I want to calculate the dose (X) for 50% inhibition
of a biological response (Y). My "response" is a "count"
data that fits a Poisson distribution perfectly.
>
> I could make my life easy and calculate: "dose
response/control response" = % of total response...
and then use logistic regression, but somehow, that
doesn't sound right.
>
> Should I just stick to logistic regression and go
on with my life? Can I be cured of this paranoia?
> ;-)
>
> I thought a Poisson regression would be more
appropriate, but I don't know how to "properly"
calculate the dose equivalent to 50% inhibition.
i/e confidence intervals, etc on the "X" = dose.
Basically an "inverse" prediction problem.
>
> By the way, my data is "graphically" linear for
Log(Y) = log(X) where Y is counts and X is dose.
>
> I use a Poisson regression to fit my dose-response
experiment by EXCLUDING the response for dose = 0,
because of log(0)
>
> Under "R" =
>
>
>>	glm.dose <- glm(response[-1] ~ log(dose[-1]),family=poisson())
>
>
> (that's why you see the "dose[-1]" term. The
"first" dose in the dose vector is 0.
>
> This is really a nice fit. I can obtain a nice
slope (B) and intercept (A):
>
> log(Y) = B log(x) + A
>
> I do have a biological value for dose = 0 from
my "control". i/e Ymax = some number with a Poisson
error again
>
> So, what I want is EC50x :
>
> Y/Ymax = 0.5 = exp(B log(EC50x) + A) / Ymax
>
> exp((log(0.5) + Log(Ymax)) - A)/B) = EC50x
>
> That's all fine, except I don't have a clue on how
to calculate the confidence intervals of EC50x or even
if I can model this inverse prediction with a Poisson
regression. In OLS linear regression, fitting X based
on Y is not a good idea because of the way OLS calculates
the slope and intercept. Is the same problem found in
GLM/Poisson regression? Moreover, I also have a Poisson
error on Ymax that I would have to consider, right?
>
> Help!!!!
>
>

```