MCRLLM: Multivariate Curve Resolution by Log-Likelihood Maximization
Project description
MCRLLM: Multivariate Curve Resolution by Log-Likelihood Maximization.
X = CS
where
X(nxk): Spectroscopic data where n spectra acquired over k energy levels
C(nxa): Composition map based on a MCRLLM components
S(axk): Spectra of the a components as computed by MCRLLM
Method first presented in
Lavoie F.B., Braidy N. and Gosselin R. (2016) Including Noise Characteristics in MCR to improve Mapping and Component Extraction from Spectral Images, Chemometrics and Intelligent Laboratory Systems, 153, 40-50.
Input data
Algorithm is designed to treat 2D data X(nxk) where n spectra acquired over k energy levels.
A 3D spectral image X(n1,n2,k) can be unfolded to a 2D matrix X(n1xn2,k) prior to MCRLLM analysis. Composition maps can then be obtained by folding C(n1xn2,a) into 2D chemical maps C(n1,n2,a).
Input and output arguments
MCRLLM requires 2 inputs : X data and number of MCRLLM components to compute (nb).
decomposition = mcr.mcrllm(X,nb)
Results
Show S and C for each iteration (all) or only for final results (final).
S_all = decomposition.allS
S_final = decomposition.S
C_all = decomposition.allC
C_final = decomposition.C
Example
#Compute MCRLLM on X using 7 components.
import MCRLLM as mcr
import matplotlib.pyplot as plt
decomposition = mcr.mcrllm(X,7)
#Iterate each component 10 times
decomposition.iterate(10)
S_final = decomposition.S
C_final = decomposition.C
plt.figure();plt.plot(S_final.T)
plt.figure();plt.plot(C_final)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.