# [R] inverse prediction and Poisson regression

Vincent Philion vincent.philion at irda.qc.ca
Fri Jul 25 08:01:17 CEST 2003

```Hello and thank you for your interest in this problem.

"real life data" would look like this:

x	y
0		28
0.03		21
0.1		11
0.3		15
1		5
3		4
10		1
30		0
100		0

x	y
0	30
0.0025	30
0.02	25
0.16	25
1.28	10
10.24	0
81.92	0

X	Y
0	35
0.00025	23
0.002	14
0.016	6
0.128	5
1.024	3
8.192	2

X	Y
0  43
0.00025  35
0.002  20
0.016  16
0.128  11
1.024  6
8.192   0

Where X is dose and Y is response.
the relation is linear for log(response) = b log(dose) + intercept

Response for dose 0 is a "control" = Ymax. So, What I want is the dose for 50% response. For instance, in example 1:

Ymax = 28 (this is also an observation with Poisson error)

So I want dose for response = 14 = approx. 0.3

any help would be greatly appreciated!

bye for now,

Vincent

> 	  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!!!!
>>
>>
>
>
>

--
Vincent Philion, M.Sc. agr.
Phytopathologiste
Institut de Recherche et de Développement en Agroenvironnement (IRDA)
3300 Sicotte, St-Hyacinthe
Québec
J2S 7B8

téléphone: 450-778-6522 poste 233
courriel: vincent.philion at irda.qc.ca
Site internet : www.irda.qc.ca

```