BMTfit.mme {BMT}R Documentation

Moment Matching Fit of the BMT Distribution to Non-censored Data.


Fit of the BMT distribution to non-censored data by moment matching (mme).


BMTfit.mme(data, start = list(p3 = 0.5, p4 = 0.5, p1 = min(data) - 0.1, p2 =
  max(data) + 0.1), fix.arg = NULL, type.p.3.4 = "t w",
  type.p.1.2 = "c-d", optim.method = "Nelder-Mead", custom.optim = NULL,
  silent = TRUE, ...)



A numeric vector with the observed values for non-censored data.


A named list giving the initial values of parameters of the BMT distribution or a function of data computing initial values and returning a named list. (see the 'details' section of mledist).


An optional named list giving the values of fixed parameters of the BMT distribution or a function of data computing (fixed) parameter values and returning a named list. Parameters with fixed value are thus NOT estimated. (see the 'details' section of mledist).


Type of parametrization asociated to p3 and p4. "t w" means tails weights parametrization (default) and "a-s" means asymmetry-steepness parametrization.


Type of parametrization asociated to p1 and p2. "c-d" means domain parametrization (default) and "l-s" means location-scale parametrization.


"default" (see the 'details' section of mledist) or optimization method to pass to optim.


A function carrying the optimization (see the 'details' section of mledist).


A logical to remove or show warnings when bootstraping.


Further arguments to be passed to generic functions or to the function "mmedist". See mmedist for details.


This function is not intended to be called directly but is internally called in BMTfit when used with the moment matching method.

BMTfit.mme is based on the function mmedist but it focuses on the moment matching parameter estimation for the BMT distribution (see BMT for details about the BMT distribution and mmedist for details about moment matching fit of univariate distributions).

For each parameter of the BMT distribution we choose a moment or measure. Mean for p1, standard deviation for p2, Pearson_s skewness for p3, and Pearson's kurtosis for p4.


BMTfit.mme returns a list with following components,


the parameter estimates.


an integer code for the convergence of optim/constrOptim defined as below or defined by the user in the user-supplied optimization function.

0 indicates successful convergence.

1 indicates that the iteration limit of optim has been reached.

10 indicates degeneracy of the Nealder-Mead simplex.

100 indicates that optim encountered an internal error.


the value of the corresponding objective function of the estimation method at the estimate.


a symmetric matrix computed by optim as an estimate of the Hessian at the solution found or computed in the user-supplied optimization function.


the log-likelihood value.


the vector of moment(s) matched: mean (1), standard deviation (2), Pearson's skewness (3), Pearson's kurtosis (4).


the empirical moment function.


the name of the optimization function used for maximum product of spacing.


when optim is used, the name of the algorithm used, NULL otherwise.


the named list giving the values of parameters of the named distribution that must kept fixed rather than estimated or NULL if there are no such parameters.

the function used to set the value of fix.arg or NULL.


the vector of weigths used in the estimation process or NULL.


A two-element integer vector giving the number of calls to the log-likelihood function and its gradient respectively. This excludes those calls needed to compute the Hessian, if requested, and any calls to log-likelihood function to compute a finite-difference approximation to the gradient. counts is returned by optim or the user-supplied function or set to NULL.


A character string giving any additional information returned by the optimizer, or NULL. To understand exactly the message, see the source code.


Camilo Jose Torres-Jimenez [aut,cre]


Based on the function mmedist of the R package: fitdistrplus

Delignette-Muller ML and Dutang C (2015), fitdistrplus: An R Package for Fitting Distributions. Journal of Statistical Software, 64(4), 1-34.


Torres-Jimenez, C. J. (2017, September), Comparison of estimation methods for the BMT distribution. ArXiv e-prints.

Torres-Jimenez, C. J. (2018), The BMT Item Response Theory model: A new skewed distribution family with bounded domain and an IRT model based on it, PhD thesis, Doctorado en ciencias - Estadistica, Universidad Nacional de Colombia, Sede Bogota.

See Also

See BMT for the BMT density, distribution, quantile function and random deviates. See BMTfit.qme, BMTfit.mle, BMTfit.mge, BMTfit.mpse and BMTfit.mqde for other estimation methods. See optim and constrOptim for optimization routines. See BMTfit and fitdist for functions that return an objetc of class "fitdist".


# (1) basic fit by moment matching estimation
x1 <- rBMT(n=100, p3=0.25, p4=0.75)

# (3) how to change the optimisation method?
BMTfit.mme(x1, optim.method="L-BFGS-B") 
BMTfit.mme(x1, custom.optim="nlminb")

# (4) estimation of the tails weights parameters of the BMT 
# distribution with domain fixed at [0,1]
BMTfit.mme(x1, start=list(p3=0.5, p4=0.5), fix.arg=list(p1=0, p2=1))

# (5) estimation of the asymmetry-steepness parameters of the BMT 
# distribution with domain fixed at [0,1]
BMTfit.mme(x1, start=list(p3=0, p4=0.5), type.p.3.4 = "a-s", 
           fix.arg=list(p1=0, p2=1))

[Package BMT version Index]