`R/IBM_decontaminated_unknownComp.R`

`IBM_decontaminated_unknownComp.Rd`

Estimate (and plot) the decontaminated density of the unknown component in the admixture models to compare, thanks to the Inversion step related to the Inversion - Best Matching (IBM) method. See 'Details' for further information on this estimation technique.

IBM_decontaminated_unknownComp( sample1, sample2, comp.dist, comp.param, estim.obj, add_plot = TRUE )

sample1 | Observations of the first sample under study. |
---|---|

sample2 | Observations of the second sample under study. |

comp.dist | A list with four elements corresponding to the component distributions (specified with R native names for these distributions) involved in the two admixture models. The two first elements refer to the unknown and known components of the 1st admixture model, and the last two ones to those of the second admixture model. If there are unknown elements, they must be specified as 'NULL' objects. For instance, 'comp.dist' could be specified as follows: list(f1=NULL, g1='norm', f2=NULL, g2='norm'). |

comp.param | A list with four 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. The two first elements refer to the parameters of unknown and known components of the 1st admixture model, and the last two ones to those of the second admixture model. If there are unknown elements, they must be specified as 'NULL' objects. For instance, 'comp.param' could be specified as follows: : list(f1=NULL, g1=list(mean=0,sd=1), f2=NULL, g2=list(mean=3,sd=1.1)). |

estim.obj | an R object obtained from the estimation of the component weights related to the proportions of the unknown component in each of the two admixture models studied. |

add_plot | a boolean (TRUE by default) specifying if one plots the decontaminated densities of the two admixture models, for visual comparison purpose. |

A list containing two elements: 1) the decontaminated density f1 of the 1st admixture model, 2) the same for the 2nd admixture model.

See the paper presenting the IBM approach at the following HAL weblink: https://hal.archives-ouvertes.fr/hal-03201760. Still not implemented for admixture of multinomial distributions.

Xavier Milhaud xavier.milhaud.research@gmail.com

## Simulate data: list.comp <- list(f1 = 'norm', g1 = 'norm', f2 = 'norm', g2 = 'norm') list.param <- list(f1 = list(mean = 3, sd = 0.5), g1 = list(mean = 0, sd = 1), f2 = list(mean = 3, sd = 0.5), g2 = list(mean = 5, sd = 2)) sample1 <- rsimmix(n=1500, unknownComp_weight=0.5, comp.dist = list(list.comp$f1,list.comp$g1), comp.param=list(list.param$f1,list.param$g1)) sample2 <- rsimmix(n=2000, unknownComp_weight=0.7, comp.dist = list(list.comp$f2,list.comp$g2), comp.param=list(list.param$f2,list.param$g2)) ## Estimate the mixture weight in each of the sample in real-life setting: list.comp <- list(f1 = NULL, g1 = 'norm', f2 = NULL, g2 = 'norm') list.param <- list(f1 = NULL, g1 = list(mean = 0, sd = 1), f2 = NULL, g2 = list(mean = 5, sd = 2)) estimate <- IBM_estimProp(sample1[['mixt.data']], sample2[['mixt.data']], comp.dist = list.comp, comp.param = list.param, with.correction = FALSE, n.integ = 1000) ## Determine the decontaminated version of the unknown density by inversion: res <- IBM_decontaminated_unknownComp(sample1 = sample1[['mixt.data']], sample2 = sample2[['mixt.data']], comp.dist = list.comp, comp.param = list.param, estim.obj = estimate, add_plot = TRUE)