Skip to content
Prev 35171 / 398502 Next

inverse prediction and Poisson regression

Peter Dalgaard suggested using "a Michalis-Menten style inhibition 
(mean(Y) = ymax/(1+dose/dose50) or variants thereof)."  If you are not 
familiar with the literature on "Michalis-Menten inhibition", I suggest 
you research that and cite it in your research report.  Even if you 
don't use it, the knowledge of it might help persuade others that you at 
least considered it.

	  If we adopt Ripley's notation, this is mu(dose) = 
ymax/(1+dose/dose50), where ymax and dose50 are to be estimated.  We can 
get this, sort of, using "glm", as follows:  This model is the same as 
log(mu(dose)) = ymax - log(1+dose/dose50).  I have not tried this, but I 
believe that for fixed dose50 = 0.3, this model can be written for glm 
with the toy example I used before as follows:

Phytopath <- data.frame(x=c(0, 0.03, 0.1), 		
	y=c(28, 21, 11))
fitP.3 <- glm(y~offset(-log(1+x/0.3)), data=Phytopath[rep(1:3, 100),],
   family="poisson")
fitP.3$deviance
[1] 359.5893

	  Now, replace 0.3 by other possible values for dose50 to find the 
minimum "deviance".  Then get a 95% confidence interval using "profile 
likelihood" to find the points above and below the minimium where the 
"deviance" exceeds the minimum by  qchisq(0.95, 1) = 3.841459.  There 
are better ways to do this, but none that I can make work in the next 2 
minutes.  When I did this, I get the following:

 > fitP.06 <- glm(y~offset(-log(1+x/0.06)), data=Phytopath[rep(1:3, 100),],
+  family="poisson")
 > fitP.06$deviance
[1] 16.54977
 > fitP.065 <- glm(y~offset(-log(1+x/0.065)), data=Phytopath[rep(1:3, 
100),],
+  family="poisson")
 > fitP.065$deviance
[1] 11.59525
 > fitP.07 <- glm(y~offset(-log(1+x/0.07)), data=Phytopath[rep(1:3, 100),],
+  family="poisson")
 > fitP.07$deviance
[1] 10.96356
 > fitP.075 <- glm(y~offset(-log(1+x/0.075)), data=Phytopath[rep(1:3, 
100),],
+  family="poisson")
 > fitP.075$deviance
[1] 13.49366
 > fitP.08 <- glm(y~offset(-log(1+x/0.08)), data=Phytopath[rep(1:3, 100),],
+  family="poisson")
 > fitP.08$deviance
[1] 18.34463

 From this, I get an approximate maximum likelihood estimate for dose50 
of 0.07 with a 95% confidence interval by rough interpolation of 0.061 
to 0.076.

hope this helps.  spencer graves
p.s.  Have you plotted y vs. x with appropriate transformations?  If 
not, I suggest you do that before anything else.  Doug Bates says that 
students in his classes who don't plot the data get instant F's.  When I 
don't bother plotting the data several different ways, I often do stupid 
things.
Vincent Philion wrote:
i/e if mycelia intercepts the line twice, 2 is reported. This follows
poisson.
growth possible, and so no limit on the number of intercepts. So this is
why I adopted Poisson, not knowing how complicated my life would become!!!
and that I should simply look at percentage... Any comments on that?
How would this affect the LD50 value calculated and the confidence 
intervals?
I guess I could try several methods, but how would I go about choosing the
right one? Criteria?