fingerPro: Unmixing Model Framework

Quantifies the provenance of sediments by applying a mixing model algorithm to end sediment mixtures based on a comprehensive characterization of the sediment sources. The 'fingerPro' model builds upon the foundational concept of using mass balance linear equations for sediment source quantification by incorporating several distinct technical advancements. It employs an optimization approach to normalize discrepancies in tracer ranges and minimize the objective function. Latin hypercube sampling is used to explore all possible combinations of source contributions (0-100%), mitigating the risk of local minima. Uncertainty in source estimates is quantified through a Monte Carlo routine, and the model includes additional metrics, such as the normalized error of the virtual mixture, to detect mathematical inconsistencies, non-physical solutions, and biases. A new linear variability propagation (LVP) method is also included to address and quantify potential bias in model outcomes, particularly when dealing with dominant or non-contributing sources and high source variability, offering a significant advancement for field studies where direct comparison with theoretical apportionments is not feasible. In addition to the unmixing model, a complete framework for tracer selection is included. Several methods are implemented to evaluate tracer behaviour by considering both source and mixture information. These include the Consistent Tracer Selection (CTS) method to explore all tracer combinations and select the optimal ones improving the robustness and interpretability of the model results. A Conservative Balance (CB) method is also incorporated to enable the use of isotopic tracers. The package also provides several graphical tools to support data exploration and interpretation, including box plots, correlation plots, Linear Discriminant Analysis (LDA) and Principal Component Analysis (PCA).

Version: 2.1
Depends: R (≥ 3.5)
Imports: Rcpp (≥ 0.11.3), klaR (≥ 0.6-12), ggplot2 (≥ 2.2.1), GGally (≥ 1.3.2), plyr (≥ 1.8.4), MASS (≥ 7.3-45), reshape (≥ 0.8.7), grid (≥ 3.1.1), gridExtra (≥ 2.3), scales (≥ 0.5.0), car (≥ 3.0.0), RcppProgress (≥ 0.4), Ternary (≥ 1.2.2), dplyr (≥ 1.0.7), crayon (≥ 1.4.2), plotly (≥ 4.10.3)
LinkingTo: Rcpp, RcppGSL, RcppProgress
Suggests: knitr, rmarkdown
Published: 2026-04-15
DOI: 10.32614/CRAN.package.fingerPro
Author: Borja Latorre (Core Team) ORCID iD [aut, cre], Leticia Gaspar (Core Team) ORCID iD [aut], Ivan Lizaga ORCID iD [aut], Leticia Palazon ORCID iD [aut], Vince Q Vu [ctb], Ana Navas (Core Team) ORCID iD [aut, fnd, ths]
Maintainer: Borja Latorre (Core Team) <borja.latorre at csic.es>
License: GPL-2
URL: https://github.com/eead-csic-eesa/fingerPro
NeedsCompilation: yes
Citation: fingerPro citation info
Materials: README, NEWS
CRAN checks: fingerPro results

Documentation:

Reference manual: fingerPro.html , fingerPro.pdf
Vignettes: About FingerPro (source, R code)
Getting Started (source, R code)
Workflow Example (source, R code)

Downloads:

Package source: fingerPro_2.1.tar.gz
Windows binaries: r-devel: fingerPro_2.0.zip, r-release: fingerPro_2.0.zip, r-oldrel: fingerPro_2.0.zip
macOS binaries: r-release (arm64): fingerPro_2.0.tgz, r-oldrel (arm64): fingerPro_2.0.tgz, r-release (x86_64): fingerPro_2.1.tgz, r-oldrel (x86_64): fingerPro_2.1.tgz
Old sources: fingerPro archive

Linking:

Please use the canonical form https://CRAN.R-project.org/package=fingerPro to link to this page.