| Normal {base} | R Documentation |
The Normal Distribution
Description
Density, distribution function, quantile function and random
generation for the normal distribution with mean equal to mean
and standard deviation equal to sd.
Usage
dnorm(x, mean=0, sd=1, log = FALSE)
pnorm(q, mean=0, sd=1, lower.tail = TRUE, log.p = FALSE)
qnorm(p, mean=0, sd=1, lower.tail = TRUE, log.p = FALSE)
rnorm(n, mean=0, sd=1)
Arguments
x, q |
vector of quantiles. |
p |
vector of probabilities. |
n |
number of observations. If |
mean |
vector of means. |
sd |
vector of standard deviations. |
log, log.p |
logical; if TRUE, probabilities p are given as log(p). |
lower.tail |
logical; if TRUE (default), probabilities are
|
Details
If mean or sd are not specified they assume the default
values of 0 and 1, respectively.
The normal distribution has density
f(x) =
\frac{1}{\sqrt{2\pi}\sigma} e^{-(x-\mu)^2/2\sigma^2}
where \mu is the mean of the distribution and
\sigma the standard deviation.
qnorm is based on Wichura's algorithm AS 241 which provides
precise results up to about 16 digits.
Value
dnorm gives the density,
pnorm gives the distribution function,
qnorm gives the quantile function, and
rnorm generates random deviates.
References
Wichura, M. J. (1988) Algorithm AS 241: The Percentage Points of the Normal Distribution. Applied Statistics, 37, 477–484.
See Also
runif and .Random.seed about random number
generation, and dlnorm for the Lognormal distribution.
Examples
dnorm(0) == 1/ sqrt(2*pi)
dnorm(1) == exp(-1/2)/ sqrt(2*pi)
dnorm(1) == 1/ sqrt(2*pi*exp(1))
## Using "log = TRUE" for an extended range :
par(mfrow=c(2,1))
plot(function(x)dnorm(x, log=TRUE), -60, 50, main = "log { Normal density }")
curve(log(dnorm(x)), add=TRUE, col="red",lwd=2)
mtext("dnorm(x, log=TRUE)", adj=0); mtext("log(dnorm(x))", col="red", adj=1)
plot(function(x)pnorm(x, log=TRUE), -50, 10, main = "log { Normal Cumulative }")
curve(log(pnorm(x)), add=TRUE, col="red",lwd=2)
mtext("pnorm(x, log=TRUE)", adj=0); mtext("log(pnorm(x))", col="red", adj=1)