BVdk_estimParam {admix}R Documentation

Estimation of the parameters in a two-component admixture model with symmetric unknown density

Description

Estimation of the two parameters (mixture weight as well as location shift) in the admixture model with pdf: l(x) = p*f(x-mu) + (1-p)*g(x), x in R, where g is the known component, p is the proportion and f is the unknown component with symmetric density. The localization shift parameter is thus denoted mu, and the component weight p. See 'Details' below for further information.

Usage

BVdk_estimParam(
  data,
  method = c("L-BFGS-B", "Nelder-Mead"),
  comp.dist,
  comp.param
)

Arguments

data

The observed sample under study.

method

The method used throughout the optimization process, either 'L-BFGS-B' or 'Nelder-Mead' (see ?optim).

comp.dist

A list with two elements corresponding to component distributions (specified with R native names for these distributions) involved in the admixture model. Unknown elements must be specified as 'NULL' objects, e.g. when 'f' is unknown: list(f=NULL, g='norm').

comp.param

A list with two elements corresponding to the parameters of the component distributions, each element being a list itself. The names used in this list must correspond to the native R argument names for these distributions. Unknown elements must be specified as 'NULL' objects, e.g. if 'f' is unknown: list(f=NULL, g=list(mean=0,sd=1)).

Details

Parameters are estimated by minimization of the contrast function, where the contrast is defined in Bordes, L. and Vandekerkhove, P. (2010); Semiparametric two-component mixture model when a component is known: an asymptotically normal estimator; Math. Meth. Stat.; 19, pp. 22–41.

Value

A numeric vector with the two estimated parameters (proportion first, and then location shift).

Author(s)

Xavier Milhaud xavier.milhaud.research@gmail.com

Examples

## Simulate data:
list.comp <- list(f = 'norm', g = 'norm')
list.param <- list(f = list(mean = -2, sd = 0.5),
                   g = list(mean = 0, sd = 1))
data1 <- rsimmix(n = 200, unknownComp_weight = 0.4, list.comp, list.param)[['mixt.data']]
## Perform the estimation of parameters in real-life:
list.comp <- list(f = NULL, g = 'norm')
list.param <- list(f = NULL, g = list(mean = 0, sd = 1))
BVdk_estimParam(data1, method = 'L-BFGS-B', list.comp, list.param)


[Package admix version 2.1-2 Index]