Hi there, I hope someone can help me. I have a dataset of Concentration against Mortality, and I am trying to compare the use of Logit and Probit models using this data. The issue I am having is trying to back transform the data from the probit model, to plot it in normal space instead of log space. I know this can be done with a logit model using the code below, where ilogit is a function for the inverse logit: NEWCONC <- seq(0,0.6, length=25) NEWMORT <- predict(LOGIT, Conc=NEWCONC, se=TRUE) plot(data=DATA, Prop~Conc) lines(NEWCONC, ilogit(NEWMORT$fit)) However, I can't seem to find a function equivalent to ilogit for a probit model, that I could use in this code: NEWCONC <- seq(0,0.6, length=25) NEWMORT <- predict(PROBIT, Conc=NEWCONC, se=TRUE) plot(data=DATA, Prop~Conc) lines(NEWCONC,###INVERSE PROBIT### (NEWMORT$fit)) Any advice on this issue would be appreciated, Thanks, Calum -- View this message in context: http://r.789695.n4.nabble.com/Inverse-of-Probit-tp4680752.html Sent from the R help mailing list archive at Nabble.com.
Inverse of Probit
3 messages · Calum, David Winsemius, Ben Bolker
On Nov 19, 2013, at 10:59 AM, Calum wrote:
Hi there, I hope someone can help me. I have a dataset of Concentration against Mortality, and I am trying to compare the use of Logit and Probit models using this data. The issue I am having is trying to back transform the data from the probit model, to plot it in normal space instead of log space. I know this can be done with a logit model using the code below, where ilogit is a function for the inverse logit: NEWCONC <- seq(0,0.6, length=25) NEWMORT <- predict(LOGIT, Conc=NEWCONC, se=TRUE) plot(data=DATA, Prop~Conc) lines(NEWCONC, ilogit(NEWMORT$fit)) However, I can't seem to find a function equivalent to ilogit for a probit model, that I could use in this code: NEWCONC <- seq(0,0.6, length=25) NEWMORT <- predict(PROBIT, Conc=NEWCONC, se=TRUE)
You should be looking at ?predict and paying particular attention to the 'type' argument. I think you want: type='response'
plot(data=DATA, Prop~Conc) lines(NEWCONC,###INVERSE PROBIT### (NEWMORT$fit)) Any advice on this issue would be appreciated, Thanks, Calum -- View this message in context: http://r.789695.n4.nabble.com/Inverse-of-Probit-tp4680752.html Sent from the R help mailing list archive at Nabble.com.
______________________________________________ R-help at 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.
David Winsemius Alameda, CA, USA
1 day later
David Winsemius <dwinsemius <at> comcast.net> writes:
On Nov 19, 2013, at 10:59 AM, Calum wrote:
Hi there, I hope someone can help me. I have a dataset of Concentration against Mortality, and I am trying to compare the use of Logit and Probit models using this data.
[snip snip snip] There are three ways you can get the inverse-link function 1. dig into the family object: binomial(link="probit")$linkinv 2. know that the probit link is the qnorm() (Normal quantile) function, and the inverse-probit is pnorm() (the Normal CDF). (Similarly, it seems that a lot of users don't know that plogis()/qlogis() similarly provide the logistic and logit functions ... 3. As David Winsemius suggests, use predict(...,type="response") (but options #1 and #2 are useful in providing flexibility).