BMTfit.mme: Moment Matching Fit of the BMT Distribution to Non-censored...

Description Usage Arguments Details Value Author(s) Source References See Also Examples

View source: R/BMTfit.mme.R

Description

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

Usage

1
2
3
4
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, ...)

Arguments

data

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

start

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).

fix.arg

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.p.3.4

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

type.p.1.2

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

optim.method

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

custom.optim

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

silent

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.

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.

Value

BMTfit.mme returns a list with following components,

estimate

the parameter estimates.

convergence

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.

value

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

hessian

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

loglik

the log-likelihood value.

order

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

memp

the empirical moment function.

optim.function

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

optim.method

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

fix.arg

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.

fix.arg.fun

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

weights

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

counts

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.

optim.message

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

Author(s)

Camilo Jose Torres-Jimenez [aut,cre] [email protected]

Source

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.

References

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".

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
# (1) basic fit by moment matching estimation
set.seed(1234)
x1 <- rBMT(n=100, p3=0.25, p4=0.75)
BMTfit.mme(x1)

# (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))

BMT documentation built on Sept. 19, 2017, 9:02 a.m.