Transform values to and from the logit scale.
logit() calculates
Value
- A vector of doubles, if - por- xis a vector.
- A matrix of doubles, if - por- xis a matrix.
- An object of class - rvec_dbl, if- por- xis an rvec.
Details
$$x = \log \left(\frac{p}{1 - p}\right)$$
and invlogit() calculates
$$p = \frac{e^x}{1 + e^x}$$
To avoid overflow, invlogit()
uses \(p = \frac{1}{1 + e^{-x}}\)
internally for \(x\) where \(x > 0\).
In some of the demographic literature, the logit function is defined as
$$x = \frac{1}{2} \log \left(\frac{p}{1 - p}\right).$$
logit() and invlogit() follow the conventions
in statistics and machine learning, and omit the
\(\frac{1}{2}\).
Examples
p <- c(0.5, 1, 0.2)
logit(p)
#> [1]  0.000000       Inf -1.386294
invlogit(logit(p))
#> [1] 0.5 1.0 0.2
