
ezmlnorm(x, method = "mvue", ci = FALSE, ci.type = "two-sided",
ci.method = "normal.approx", conf.level = 0.95)
ezmlnormAlt(x, method = "mvue", ci = FALSE, ci.type = "two-sided",
ci.method = "normal.approx", conf.level = 0.95)
NA
), undefined (NaN
),
and infinite (Inf
, -Inf
) values are allowed but will be removed."mvue"
(minimum variance unbiased; the default). See the DETAILS section for
more information on this estimation method.FALSE
. If ci=TRUE
and there are less
than three non-missing observations in x
, or if all observations ar"two-sided"
(the default), "lower"
, and
"upper"
. This argument is ignored if ci=FALSE
."normal.approx"
(the default). See the DETAILS section for more information.
This argument is ignored iconf.level=0.95
. This argument is ignored if
ci=FALSE
."estimate"
containing the estimated parameters and other information.
See estimate.object
for details.
For the function ezmlnorm
, the component called parameters
is a
numeric vector with the following estimated parameters:
meanlog
mean of the log of the lognormal part of the distribution.
sdlog
standard deviation of the log of the lognormal part of the distribution.
p.zero
probability that an observation will be 0.
mean.zmlnorm
mean of the overall zero-modified lognormal (delta) distribution.
sd.zmlnorm
standard deviation of the overall zero-modified lognormal (delta) distribution.
}
For the function ezmlnormAlt
, the component called parameters
is a
numeric vector with the following estimated parameters:
mean
mean of the lognormal part of the distribution.
cv
coefficient of variation of the lognormal part of the distribution.
p.zero
probability that an observation will be 0.
mean.zmlnorm
mean of the overall zero-modified lognormal (delta) distribution.
sd.zmlnorm
standard deviation of the overall zero-modified lognormal (delta) distribution.
}x
contains any missing (NA
), undefined (NaN
) or
infinite (Inf
, -Inf
) values, they will be removed prior to
performing the estimation.
Let $\underline{x} = (x_1, x_2, \ldots, x_n)$ be a vector of
$n$ observations from a
zero-modified lognormal distribution with
parameters meanlog=
$\mu$, sdlog=
$\sigma$, and
p.zero=
$p$. Alternatively, let
$\underline{x} = (x_1, x_2, \ldots, x_n)$ be a vector of
$n$ observations from a
zero-modified lognormal distribution
(alternative parameterization) with parameters mean=
$\theta$,
cv=
$\tau$, and p.zero=
$p$.
Let $r$ denote the number of observations in $\underline{x}$ that are equal
to 0, and order the observations so that $x_1, x_2, \ldots, x_r$ denote
the $r$ zero observations and $x_{r+1}, x_{r+2}, \ldots, x_n$ denote
the $n-r$ non-zero observations.
Note that $\theta$ is not the mean of the zero-modified lognormal
distribution; it is the mean of the lognormal part of the distribution. Similarly,
$\tau$ is not the coefficient of variation of the zero-modified
lognormal distribution; it is the coefficient of variation of the lognormal
part of the distribution.
Let $\gamma$, $\delta$, and $\phi$ denote the mean, standard deviation,
and coefficient of variation of the overall zero-modified lognormal (delta)
distribution. Let $\eta$ denote the standard deviation of the lognormal
part of the distribution, so that $\eta = \theta \tau$. Aitchison (1955)
shows that:
method="mvue"
)
Aitchison (1955) shows that the minimum variance unbiased estimators (mvue's) of
$\gamma$ and $\delta$ are:
ci.method="normal.approx"
)
An approximate $(1-\alpha)100%$ confidence interval for $\gamma$ is
constructed based on the assumption that the estimator of $\gamma$ is
approximately normally distributed. Thus, an approximate two-sided
$(1-\alpha)100%$ confidence interval for $\gamma$ is constructed as:
# Generate 100 observations from a zero-modified lognormal (delta)
# distribution with mean=2, cv=1, and p.zero=0.5, then estimate the
# parameters. According to equations (1) and (3) above, the overall mean
# is mean.zmlnorm=1 and the overall cv is cv.zmlnorm=sqrt(3).
# (Note: the call to set.seed simply allows you to reproduce this example.)
set.seed(250)
dat <- rzmlnormAlt(100, mean = 2, cv = 1, p.zero = 0.5)
ezmlnormAlt(dat, ci = TRUE)
#Results of Distribution Parameter Estimation
#--------------------------------------------
#
#Assumed Distribution: Zero-Modified Lognormal (Delta)
#
#Estimated Parameter(s): mean = 1.9604561
# cv = 0.9169411
# p.zero = 0.4500000
# mean.zmlnorm = 1.0782508
# cv.zmlnorm = 1.5307175
#
#Estimation Method: mvue
#
#Data: dat
#
#Sample Size: 100
#
#Confidence Interval for: mean.zmlnorm
#
#Confidence Interval Method: Normal Approximation
# (t Distribution)
#
#Confidence Interval Type: two-sided
#
#Confidence Level: 95%
#
#Confidence Interval: LCL = 0.748134
# UCL = 1.408368
#----------
# Clean up
rm(dat)
Run the code above in your browser using DataLab