Mixture of Two Lognormal Distributions
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; μ, σ) denote the density of a
lognormal random variable with parameters
meanlog=
μ and sdlog=
σ. The density, g, of a
lognormal mixture random variable with parameters meanlog1=
μ_1,
sdlog1=
σ_1, meanlog2=
μ_2,
sdlog2=
σ_2, and p.mix=
p is given by:
g(x; μ_1, σ_1, μ_2, σ_2, p) = (1 - p) f(x; μ_1, σ_1) + p f(x; μ_2, σ_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.
# 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
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.