[R] How to find inverse of glm model?
Luigi Marongiu
m@rong|u@|u|g| @end|ng |rom gm@||@com
Tue Apr 15 14:57:17 CEST 2025
I have fitted a glm model to some data; how can I find the inverse
function of this model? Since I don't know the y=f(x) implemented by
glm (this works under the hood), I can't define a f⁻¹(y).
Is there an R function that can find the inverse of a glm model?
Thank you.
The working example is:
```
V = c(120.64, 66.14, 34.87, 27.11, 8.87, -5.8, 4.52,
-7.16, -17.39,
-14.29, -20.26, -14.99, -21.05, -20.64,
-8.03, -21.56, -1.28, 15.01,
75.26, 191.76, 455.09, 985.96, 1825.59,
2908.08, 3993.18, 5059.94,
6071.93, 6986.32, 7796.01, 8502.25, 9111.46,
9638.01, 10077.19,
10452.02, 10751.81, 11017.49, 11240.37,
11427.47, 11570.07, 11684.96,
11781.77, 11863.35, 11927.44, 11980.81,
12021.88, 12058.35, 12100.63,
12133.57, 12148.89, 12137.09)
df = data.frame(Cycles = 1:35, Values = V[1:35])
M = max(df$Values)
df$Norm = df$Values/M
df$Norm[df$Norm<0] = 0
b_model = glm(Norm ~ Cycles, data=df, family=binomial)
plot(Norm ~ Cycles, df, main="Normalized view",
xlab=expression(bold("Time")),
ylab=expression(bold("Signal (normalized)")),
type="p", col="cyan")
lines(b_model$fitted.values ~ df$Cycles, col="blue", lwd=2)
```
More information about the R-help
mailing list