eqzmlnorm.Rd
Estimate quantiles of a zero-modified lognormal distribution or a zero-modified lognormal distribution (alternative parameterization).
eqzmlnorm(x, p = 0.5, method = "mvue", digits = 0)
eqzmlnormAlt(x, p = 0.5, method = "mvue", digits = 0)
a numeric vector of positive observations, or an object resulting from a call to an estimating function that assumes a zero-modified lognormal distribution.
For eqzmlnorm
, if x
is an object, it must be the result of calling
ezmlnorm
, not ezmlnormAlt
.
For eqzmlnormAlt
, if x
is an object, it must be the
result of calling ezmlnormAlt
, not ezmlnorm
.
If x
is a numeric vector,
missing (NA
), undefined (NaN
), and infinite (Inf
, -Inf
)
values are allowed but will be removed.
numeric vector of probabilities for which quantiles will be estimated.
All values of p
must be between 0 and 1. When ci=TRUE
, p
must be a scalar. The default value is p=0.5
.
character string specifying the method of estimation. The only possible value is
"mvue"
(minimum variance unbiased; the default). See the DETAILS section of
the help file for ezmlnorm
for more information.
an integer indicating the number of decimal places to round to when printing out
the value of 100*p
. The default value is digits=0
.
The functions eqzmlnorm
and eqzmlnormAlt
return estimated quantiles
as well as estimates of the distribution parameters.
Quantiles are estimated by:
estimating the distribution parameters by calling ezmlnorm
or
ezmlnormAlt
, and then
calling the function qzmlnorm
or
qzmlnormAlt
and using the estimated
distribution parameters.
If x
is a numeric vector, eqzmlnorm
and eqzmlnormAlt
return a
list of class "estimate"
containing the estimated quantile(s) and other
information. See estimate.object
for details.
If x
is the result of calling an estimation function, eqzmlnorm
and
eqzmlnormAlt
return a list whose class is the same as x
. The list
contains the same components as x
, as well as components called
quantiles
and quantile.method
.
Aitchison, J. (1955). On the Distribution of a Positive Random Variable Having a Discrete Probability Mass at the Origin. Journal of the American Statistical Association 50, 901–908.
Aitchison, J., and J.A.C. Brown (1957). The Lognormal Distribution (with special reference to its uses in economics). Cambridge University Press, London. pp.94-99.
Crow, E.L., and K. Shimizu. (1988). Lognormal Distributions: Theory and Applications. Marcel Dekker, New York, pp.47–51.
Gibbons, RD., D.K. Bhaumik, and S. Aryal. (2009). Statistical Methods for Groundwater Monitoring. Second Edition. John Wiley and Sons, Hoboken, NJ.
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.
Helsel, D.R. (2012). Statistics for Censored Environmental Data Using Minitab and R. Second Edition. John Wiley and Sons, Hoboken, NJ, Chapter 1.
Johnson, N. L., S. Kotz, and A.W. Kemp. (1992). Univariate Discrete Distributions. Second Edition. John Wiley and Sons, New York, p.312.
Owen, W., and T. DeRouen. (1980). Estimation of the Mean for Lognormal Data Containing Zeros and Left-Censored Values, with Applications to the Measurement of Worker Exposure to Air Contaminants. Biometrics 36, 707–719.
USEPA (1992c). Statistical Analysis of Ground-Water Monitoring Data at RCRA Facilities: Addendum to Interim Final Guidance. Office of Solid Waste, Permits and State Programs Division, US Environmental Protection Agency, Washington, D.C.
USEPA. (2009). Statistical Analysis of Groundwater Monitoring Data at RCRA Facilities, Unified Guidance. EPA 530/R-09-007, March 2009. Office of Resource Conservation and Recovery Program Implementation and Information Division. U.S. Environmental Protection Agency, Washington, D.C.
The zero-modified lognormal (delta) distribution is sometimes used to model chemical concentrations for which some observations are reported as “Below Detection Limit” (the nondetects are assumed equal to 0). See, for example, Gilliom and Helsel (1986), Owen and DeRouen (1980), and Gibbons et al. (2009, Chapter 12). USEPA (2009, Chapter 15) recommends this strategy only in specific situations, and Helsel (2012, Chapter 1) strongly discourages this approach to dealing with non-detects.
A variation of the zero-modified lognormal (delta) distribution is the zero-modified normal distribution, in which a normal distribution is mixed with a positive probability mass at 0.
One way to try to assess whether a zero-modified lognormal (delta),
zero-modified normal, censored normal, or censored lognormal is the best
model for the data is to construct both censored and detects-only probability
plots (see qqPlotCensored
).
# Generate 100 observations from a zero-modified lognormal (delta)
# distribution with mean=2, cv=1, and p.zero=0.5, then estimate the
# parameters and also the 80'th and 90'th percentiles.
# (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)
eqzmlnormAlt(dat, p = c(0.8, 0.9))
#>
#> 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
#>
#> Estimated Quantile(s): 80'th %ile = 1.897451
#> 90'th %ile = 2.937976
#>
#> Quantile Estimation Method: Quantile(s) Based on
#> mvue Estimators
#>
#> Data: dat
#>
#> Sample Size: 100
#>
#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
#
#Estimated Quantile(s): 80'th %ile = 1.897451
# 90'th %ile = 2.937976
#
#Quantile Estimation Method: Quantile(s) Based on
# mvue Estimators
#
#Data: dat
#
#Sample Size: 100
#----------
# Compare the estimated quatiles with the true quantiles
qzmlnormAlt(mean = 2, cv = 1, p.zero = 0.5, p = c(0.8, 0.9))
#> [1] 1.746299 2.849858
#[1] 1.746299 2.849858
#----------
# Clean up
rm(dat)