[R] why does glm.predict give values over 1 ?

Rohit Singh rsingh at MIT.EDU
Tue Nov 1 00:14:17 CET 2005


Hi Ted,
 So here's what I'm doing:

This is my call to predict.glm:

> pY <- predict.glm(from69.fin.glm, newdata=d.tab, type="response")

This is what the fitted glm object looks like:

> from69.fin.glm

Call:  glm(formula = TR ~ z1 + e12_div_p_n + z2 + p_n, data = j2.tab)

Coefficients:
(Intercept)           z1  e12_div_p_n           z2          p_n
  0.0462932    0.0063221   -0.0202138    0.0063221    0.0004168

Degrees of Freedom: 137 Total (i.e. Null);  133 Residual
Null Deviance:      34.32
Residual Deviance: 21.93        AIC: 149.8


This is an example of what the data file looks like

TR  s_n p_n z1 z2 z1_div_s_n z2_div_s_n z1_div_p_n z2_div_p_n e1 e2 e1_div_s_n e2_div_s_n e1_div_p_n e2_div_p_n e12 e12_div_s_n e12_div_p_n
0 169.000 167.141 8.800 3.800 0.052 0.022 0.053 0.023 -2295.000 -4007.000 -13.580 -23.710 -13.731 -23.974 0.000 0.000 0.000
1 615.500 615.352 29.700 21.800 0.048 0.035 0.048 0.035 -5344.000 -4248.000 -8.682 -6.902 -8.684 -6.903 141.740 0.230 0.230
0 409.500 388.149 5.400 19.000 0.013 0.046 0.014 0.049 -6328.000 -4597.000 -15.453 -11.226 -16.303 -11.843 1069.890 2.613 2.756
0 782.500 776.276 26.100 28.800 0.033 0.037 0.034 0.037 -1279.000 1260.000 -1.635 1.610 -1.648 1.623 67.500 0.086 0.087
1 355.500 355.117 28.800 32.400 0.081 0.091 0.081 0.091 -10600.000 -9670.000 -29.817 -27.201 -29.849 -27.230 418.560 1.177 1.179
0 184.500 164.012 4.900 9.500 0.027 0.051 0.030 0.058 -4519.000 -1901.000 -24.493 -10.304 -27.553 -11.591 -963.600 -5.223 -5.875



Thanks,
rohit

On Mon, 31 Oct 2005 Ted.Harding at nessie.mcc.ac.uk wrote:

> On 31-Oct-05 Rohit Singh wrote:
> > Hi,
> >
> >  This is a newbie question. I have been using glm to perform some
> > logistic regression. However, if I take the fitted parameters (as
> > part of the glm object) and pass them on the glm.predict function,
> > for some test cases I am getting predicted values that are a little
> > over 1.  This is a bit puzzling for me, because my understanding
> > was that these numbers are probabilities and so should be between
> > 0 and 1.
> >
> > Thanks a lot! I'd appreciate any help you could provide.
> >
> > -rohit
>
> Indeed this should not happen, and probably there is some mistake
> in the way you use the predict function (which requires a little
> care).
>
> However, it's not possible to point-point what is happening
> without seeing a specific case. Can you post an example of the
> code you use when this happens? And, if feasible, also an example
> of data.
>
> Best wishes,
> Ted.
>
>
> --------------------------------------------------------------------
> E-Mail: (Ted Harding) <Ted.Harding at nessie.mcc.ac.uk>
> Fax-to-email: +44 (0)870 094 0861
> Date: 31-Oct-05                                       Time: 23:00:39
> ------------------------------ XFMail ------------------------------
>




More information about the R-help mailing list