Newer
Older
This package aims to provide a workflow for users who want to perform chemical analyses and predict characteristics using the NIRS technique.
- sample selection - you can upload all your NIRS spectra and it'll help select the samples to analyse chemically.
- model creation - PLS regression is used to create prediction models with spectra and related chemical analysis.
More algorithms had been added like LWPLR from Jchemo (https://github.com/mlesnoff/Jchemo.jl), PLSR with wavelength selection, etc.
- predictions - the models are used to predict chemical values for unknown samples. We provide information for confidence in the predicted values depending on the samples and the model used.
If one wants to use data stored in a SQL database, the config file is in the config/ folder.
The SQL script to create the database is in this same folder.
This package is written in python. You can clone the repository: git clone https://src.koda.cnrs.fr/CEFE/PACE/nirs_workflow.git
Then install the requirements: pip install -r requirements.txt
(OPTIONNAL) To use Locally weighted PLS Regression as the creation model algorithm, you will need to install Jchemo.jl (https://github.com/mlesnoff/Jchemo.jl), a Julia package.
First, install Julia (https://julialang.org/). _Tested versions are 1.10.2 and 1.10.4 (https://julialang.org/downloads/oldreleases/)_.
Then from the CLI: python
> python
'>>> import julia
'>>> julia.install()
'>>> from julia import Pkg
'>>> Pkg.add([Pkg.PackageSpec(name="Jchemo", version="0.4.0"), Pkg.PackageSpec(name="Pandas", version="1.6.1"), Pkg.PackageSpec(name="DataFrames", version="1.6.1"), ])
_The Manifest.toml file is also available. Instead of the Pkg.add() previous line, you can duplicate our full Julia environment with:_
> '>>> Pkg.instantiate()
You can then run (CLI): streamlit run ./app.py from within your src/ folder.
Ensure you run the app in a browser that is compatible with WebGL (Web Graphics Library).
_If you encounter an "import pyodbcImportError: libodbc.so.2" error on linux OS, please, install __unixodbc__ with apt install unixodbc from the CLI._
The web app allows you to process sample selection, model creation and predictions with a simple interface or the advanced one.
## Documentation
The doc is generated with mkDoc and Python DocStrings.
From CLI, run
> mkdocs serve
Contributors:
- Nicolas Barthes (CNRS)
- Abderrahim Diane (Montpellier University)
- Mouhcine Maimouni
- Rémy Beugnon
- Alexandre Granier (IRD)
- Vincent Nègre (CNRS)
We would like to thank Matthieu Lesnoff (CIRAD) for discussions and the Jchemo Toolbox.