LognormalMix | R Documentation |
Density, distribution function, quantile function, and random generation
for a mixture of two lognormal distribution with parameters
meanlog1
, sdlog1
, meanlog2
, sdlog2
, and p.mix
.
dlnormMix(x, meanlog1 = 0, sdlog1 = 1, meanlog2 = 0, sdlog2 = 1, p.mix = 0.5)
plnormMix(q, meanlog1 = 0, sdlog1 = 1, meanlog2 = 0, sdlog2 = 1, p.mix = 0.5)
qlnormMix(p, meanlog1 = 0, sdlog1 = 1, meanlog2 = 0, sdlog2 = 1, p.mix = 0.5)
rlnormMix(n, meanlog1 = 0, sdlog1 = 1, meanlog2 = 0, sdlog2 = 1, p.mix = 0.5)
x |
vector of quantiles. |
q |
vector of quantiles. |
p |
vector of probabilities between 0 and 1. |
n |
sample size. If |
meanlog1 |
vector of means of the first lognormal random variable on the log scale.
The default is |
sdlog1 |
vector of standard deviations of the first lognormal random variable on
the log scale. The default is |
meanlog2 |
vector of means of the second lognormal random variable on the log scale.
The default is |
sdlog2 |
vector of standard deviations of the second lognormal random variable on
the log scale. The default is |
p.mix |
vector of probabilities between 0 and 1 indicating the mixing proportion.
For |
Let f(x; \mu, \sigma)
denote the density of a
lognormal random variable with parameters
meanlog=
\mu
and sdlog=
\sigma
. The density, g
, of a
lognormal mixture random variable with parameters meanlog1=
\mu_1
,
sdlog1=
\sigma_1
, meanlog2=
\mu_2
,
sdlog2=
\sigma_2
, and p.mix=
p
is given by:
g(x; \mu_1, \sigma_1, \mu_2, \sigma_2, p) =
(1 - p) f(x; \mu_1, \sigma_1) + p f(x; \mu_2, \sigma_2)
dlnormMix
gives the density, plnormMix
gives the distribution function,
qlnormMix
gives the quantile function, and rlnormMix
generates random
deviates.
A lognormal mixture distribution is often used to model positive-valued data
that appear to be “contaminated”; that is, most of the values appear to
come from a single lognormal distribution, but a few “outliers” are
apparent. In this case, the value of meanlog2
would be larger than the
value of meanlog1
, and the mixing proportion p.mix
would be fairly
close to 0 (e.g., p.mix=0.1
). The value of the second standard deviation
(sdlog2
) may or may not be the same as the value for the first
(sdlog1
).
Steven P. Millard (EnvStats@ProbStatInfo.com)
Gilliom, R.J., and D.R. Helsel. (1986). Estimation of Distributional Parameters for Censored Trace Level Water Quality Data: 1. Estimation Techniques. Water Resources Research 22, 135-146.
Johnson, N. L., S. Kotz, and A.W. Kemp. (1992). Univariate Discrete Distributions. Second Edition. John Wiley and Sons, New York, pp.53-54, and Chapter 8.
Johnson, N. L., S. Kotz, and N. Balakrishnan. (1994). Continuous Univariate Distributions, Volume 1. Second Edition. John Wiley and Sons, New York.
Lognormal, NormalMix, Probability Distributions and Random Numbers.
# Density of a lognormal mixture with parameters meanlog1=0, sdlog1=1,
# meanlog2=2, sdlog2=3, p.mix=0.5, evaluated at 1.5:
dlnormMix(1.5, meanlog1 = 0, sdlog1 = 1, meanlog2 = 2, sdlog2 = 3, p.mix = 0.5)
#[1] 0.1609746
#----------
# The cdf of a lognormal mixture with parameters meanlog1=0, sdlog1=1,
# meanlog2=2, sdlog2=3, p.mix=0.2, evaluated at 4:
plnormMix(4, 0, 1, 2, 3, 0.2)
#[1] 0.8175281
#----------
# The median of a lognormal mixture with parameters meanlog1=0, sdlog1=1,
# meanlog2=2, sdlog2=3, p.mix=0.2:
qlnormMix(0.5, 0, 1, 2, 3, 0.2)
#[1] 1.156891
#----------
# Random sample of 3 observations from a lognormal mixture with
# parameters meanlog1=0, sdlog1=1, meanlog2=3, sdlog2=4, p.mix=0.2.
# (Note: the call to set.seed simply allows you to reproduce this example.)
set.seed(20)
rlnormMix(3, 0, 1, 2, 3, 0.2)
#[1] 0.08975283 1.07591103 7.85482514
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.