[R] How to find inverse of glm model?
Ben Bolker
bbo|ker @end|ng |rom gm@||@com
Tue Apr 15 15:10:40 CEST 2025
If you mean the *link function*, which translates from the data scale
to the linear predictor scale, you can get it via
b_model$family$linkfun
If you want the cycles at which the signal is equal to 0.5,
eta <- b_model$family$linkfun(0.5)
with(as.list(coef(b_model)), (eta-`(Intercept)`)/Cycles)
You might find the drc package useful as well.
cheers
Ben Bolker
On 4/15/25 08:57, Luigi Marongiu wrote:
> 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)
> ```
>
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide https://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
--
Dr. Benjamin Bolker
Professor, Mathematics & Statistics and Biology, McMaster University
Director, School of Computational Science and Engineering
* E-mail is sent at my convenience; I don't expect replies outside of
working hours.
More information about the R-help
mailing list