[R] question about se of predicted glm values

2008-05-05 Thread Jarrett Byrnes
Hey, all.  I had a quick question about fitting new glm values and  
then looking at the error around them.  I'm working with a glm using a  
Gamma distribution and a log link with two types of treatments.   
However, when I then look at the predicted values for each category, I  
find for the one that is close to 0, the error (using se.fit=T with  
predicted) actually makes it overlap 0.  This is not possible, as  
non-0 values have no meaning.

Am I missing something in the interpretation?  I'm sure I am.  Is  
there are better way to plot this that is accurate?  Below is some  
sample code for an example problem.  Note that the error for the value  
for category a (plotted at the end) does cross 0.

Note: this is a simple example.  The model I'm using has covariates,  
etc, but, I wanted to work out the correct method for the simple  
example so that I could take it back to my more complex model.  Thanks!

#data
x-as.factor(c(rep(a,4),rep(b,4)))
y-c(0.5,2,0.3,1.2,32.6,43,23.8,2.92)

#plot the raw data
plot(y ~ as.factor(x))

#fit a glm
my.glm-glm(y ~ x, family=Gamma(link=log))

#get predicted values and their error
a.fit-predict(my.glm, data.frame(x=a), se.fit=T)
b.fit-predict(my.glm, data.frame(x=b), se.fit=T)

#visualize it and see the SE cross 0
plot(1:2,c(a.fit$fit,b.fit$fit), pch=19, ylim=c(-2,4))
segments(1:2, c(a.fit$fit-a.fit$se.fit, b.fit$fit-b.fit$se.fit),
1:2, c(a.fit$fit+a.fit$se.fit, b.fit$fit+b.fit$se.fit))
lines(0:3,rep(0,4), lty=2)


-Jarrett





Jarrett Byrnes
Population Biology Graduate Group, UC Davis
Bodega Marine Lab
707-875-1969
http://www-eve.ucdavis.edu/stachowicz/byrnes.shtml


[[alternative HTML version deleted]]

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] question about se of predicted glm values

2008-05-05 Thread Berwin A Turlach
G'day Jarrett,
 tapply(y,x,mean)
a b 
 1.00 25.58 
On Mon, 5 May 2008 20:21:26 -0700
Jarrett Byrnes [EMAIL PROTECTED] wrote:

 Hey, all.  I had a quick question about fitting new glm values and  
 then looking at the error around them.  I'm working with a glm using
 a Gamma distribution and a log link with two types of treatments.   
 However, when I then look at the predicted values for each category,
 I find for the one that is close to 0, 

And this does not surprise you, since with your data:

 tapply(y,x,mean)
a b 
 1.00 25.58 

So wouldn't you expect one predicted value to be close to 1 instead of
zero?

 the error (using se.fit=T with predicted) actually makes it overlap
 0.  This is not possible, as non-0 values have no meaning.
 
 Am I missing something in the interpretation?  

Yes. :)

For GLMs, predict returns by default the predicted values on the linear
predictor scale, not on the response scale.  Negative values for the
linear predictor are, of course, possible and may have meaning.

Look closely at the pictures that you have created.  In the first one,
for x=b, the values are around 30, in the picture with the fitted value
the prediction for x=b is around 3; clearly another scale (namely the
scale of the linear predictor).

 #get predicted values and their error
 a.fit-predict(my.glm, data.frame(x=a), se.fit=T)
 b.fit-predict(my.glm, data.frame(x=b), se.fit=T)

Try: 

a.fit-predict(my.glm, data.frame(x=a), se.fit=T, type=response)
b.fit-predict(my.glm, data.frame(x=b), se.fit=T, type=response)

Hope this helps.

Best wishes,

Berwin

=== Full address =
Berwin A TurlachTel.: +65 6515 4416 (secr)
Dept of Statistics and Applied Probability+65 6515 6650 (self)
Faculty of Science  FAX : +65 6872 3919   
National University of Singapore 
6 Science Drive 2, Blk S16, Level 7  e-mail: [EMAIL PROTECTED]
Singapore 117546http://www.stat.nus.edu.sg/~statba

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.