Foldnorm {VGAM} | R Documentation |
Density, distribution function, quantile function and random generation for the (generalized) folded-normal distribution.
dfoldnorm(x, mean = 0, sd = 1, a1 = 1, a2 = 1, log = FALSE) pfoldnorm(q, mean = 0, sd = 1, a1 = 1, a2 = 1, lower.tail = TRUE, log.p = FALSE) qfoldnorm(p, mean = 0, sd = 1, a1 = 1, a2 = 1, lower.tail = TRUE, log.p = FALSE, ...) rfoldnorm(n, mean = 0, sd = 1, a1 = 1, a2 = 1)
x, q |
vector of quantiles. |
p |
vector of probabilities. |
n |
number of observations.
Same as |
mean, sd |
see |
a1, a2 |
see |
log |
Logical.
If |
lower.tail, log.p |
|
... |
Arguments that can be passed into |
See foldnormal
, the VGAM family function
for estimating the parameters,
for the formula of the probability density function and other details.
dfoldnorm
gives the density,
pfoldnorm
gives the distribution function,
qfoldnorm
gives the quantile function, and
rfoldnorm
generates random deviates.
qfoldnorm()
runs very slowly because it calls
uniroot
for each value of the argument p
.
The solution is consequently not exact; the ...
can be used
to obtain a more accurate solution if necessary.
T. W. Yee and Kai Huang
## Not run: m <- 1.5; SD <- exp(0) x <- seq(-1, 4, len = 501) plot(x, dfoldnorm(x, m = m, sd = SD), type = "l", ylim = 0:1, las = 1, ylab = paste("foldnorm(m = ", m, ", sd = ", round(SD, digits = 3), ")"), main = "Blue is density, orange is cumulative distribution function", sub = "Purple lines are the 10,20,...,90 percentiles", col = "blue") abline(h = 0, col = "gray50") lines(x, pfoldnorm(x, m = m, sd = SD), col = "orange") probs <- seq(0.1, 0.9, by = 0.1) Q <- qfoldnorm(probs, m = m, sd = SD) lines(Q, dfoldnorm(Q, m = m, sd = SD), col = "purple", lty = 3, type = "h") lines(Q, pfoldnorm(Q, m = m, sd = SD), col = "purple", lty = 3, type = "h") abline(h = probs, col = "purple", lty = 3) max(abs(pfoldnorm(Q, m = m, sd = SD) - probs)) # Should be 0 ## End(Not run)