qmedist  R Documentation 
Fit of univariate distribution by matching quantiles for non censored data.
qmedist(data, distr, probs, start = NULL, fix.arg = NULL, qtype = 7, optim.method = "default", lower = Inf, upper = Inf, custom.optim = NULL, weights = NULL, silent = TRUE, gradient = NULL, checkstartfix=FALSE, ...)
data 
A numeric vector for non censored data. 
distr 
A character string 
probs 
A numeric vector of the probabilities for which the quantile matching is done. The length of this vector must be equal to the number of parameters to estimate. 
start 
A named list giving the initial values of parameters of the named distribution
or a function of data computing initial values and returning a named list.
This argument may be omitted (default) for some distributions for which reasonable
starting values are computed (see the 'details' section of 
fix.arg 
An optional named list giving the values of fixed parameters of the named distribution or a function of data computing (fixed) parameter values and returning a named list. Parameters with fixed value are thus NOT estimated. 
qtype 
The quantile type used by the R 
optim.method 

lower 
Left bounds on the parameters for the 
upper 
Right bounds on the parameters for the 
custom.optim 
a function carrying the optimization. 
weights 
an optional vector of weights to be used in the fitting process.
Should be 
silent 
A logical to remove or show warnings when bootstraping. 
gradient 
A function to return the gradient of the squared difference for the 
checkstartfix 
A logical to test starting and fixed values. Do not change it. 
... 
further arguments passed to the 
The qmedist
function carries out the quantile matching numerically, by minimization of the
sum of squared differences between observed and theoretical quantiles.
Note that for discrete distribution, the sum of squared differences is a step function and
consequently, the optimum is not unique, see the FAQ.
The optimization process is the same as mledist
, see the 'details' section
of that function.
Optionally, a vector of weights
can be used in the fitting process.
By default (when weigths=NULL
), ordinary QME is carried out, otherwise
the specified weights are used to compute weighted quantiles used in the squared differences.
Weigthed quantiles are computed by wtd.quantile
from the Hmisc
package.
It is not yet possible to take into account weighths in functions plotdist
,
plotdistcens
, plot.fitdist
, plot.fitdistcens
, cdfcomp
,
cdfcompcens
, denscomp
, ppcomp
, qqcomp
, gofstat
and descdist
(developments planned in the future).
This function is not intended to be called directly but is internally called in
fitdist
and bootdist
.
qmedist
returns a list with following components,
estimate 
the parameter estimates. 
convergence 
an integer code for the convergence of 
value 
the minimal value reached for the criterion to minimize. 
hessian 
a symmetric matrix computed by 
optim.function 
the name of the optimization function used for maximum likelihood. 
optim.method 
when 
fix.arg 
the named list giving the values of parameters of the named distribution
that must kept fixed rather than estimated by maximum likelihood or 
fix.arg.fun 
the function used to set the value of 
weights 
the vector of weigths used in the estimation process or 
counts 
A twoelement integer vector giving the number of calls
to the loglikelihood function and its gradient respectively.
This excludes those calls needed to compute the Hessian, if requested,
and any calls to loglikelihood function to compute a finitedifference
approximation to the gradient. 
optim.message 
A character string giving any additional information
returned by the optimizer, or 
loglik 
the loglikelihood value. 
probs 
the probability vector on which quantiles are matched. 
Christophe Dutang and Marie Laure DelignetteMuller.
Klugman SA, Panjer HH and Willmot GE (2012), Loss Models: From Data to Decissions, 4th edition. Wiley Series in Statistics for Finance, Business and Economics, p. 253.
DelignetteMuller ML and Dutang C (2015), fitdistrplus: An R Package for Fitting Distributions. Journal of Statistical Software, 64(4), 134.
mmedist
, mledist
, mgedist
,
fitdist
for other estimation methods and
quantile
for empirical quantile estimation in R.
# (1) basic fit of a normal distribution # set.seed(1234) x1 < rnorm(n=100) qmedist(x1, "norm", probs=c(1/3, 2/3)) # (2) defining your own distribution functions, here for the Gumbel # distribution for other distributions, see the CRAN task view dedicated # to probability distributions dgumbel < function(x, a, b) 1/b*exp((ax)/b)*exp(exp((ax)/b)) qgumbel < function(p, a, b) a  b*log(log(p)) qmedist(x1, "gumbel", probs=c(1/3, 2/3), start=list(a=10,b=5)) # (3) fit a discrete distribution (Poisson) # set.seed(1234) x2 < rpois(n=30,lambda = 2) qmedist(x2, "pois", probs=1/2) # (4) fit a finitesupport distribution (beta) # set.seed(1234) x3 < rbeta(n=100,shape1=5, shape2=10) qmedist(x3, "beta", probs=c(1/3, 2/3)) # (5) fit frequency distributions on USArrests dataset. # x4 < USArrests$Assault qmedist(x4, "pois", probs=1/2) qmedist(x4, "nbinom", probs=c(1/3, 2/3))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.