spectrochempy.EFAο
- class EFA(*, log_level='WARNING', warm_start=False, cutoff=None, n_components=None)[source]ο
- Evolving Factor Analysis (EFA). - Evolving factor analysis ( - EFA) is a method that allows model-free resolution of overlapping peaks into concentration profiles and normalized spectra of components.- Originally developed for GC and GC-MS experiments (See e.g., Maeder and Zuberbuehler [1986] , Roach and Guilhaus [1992]), it is also suitable for analysis spectra such as those obtained by Operando FTIR for example. - The model used in this class allow to perform a forward and reverse analysis of the input - NDDataset.- Parameters:
- log_level (any of [ - "INFO",- "DEBUG",- "WARNING",- "ERROR"], optional, default:- "WARNING") β The log level at startup. It can be changed later on using the- set_log_levelmethod or by changing the- log_levelattribute.
- warm_start ( - bool, optional, default:- False) β When fitting repeatedly on the same dataset, but for multiple parameter values (such as to find the value maximizing performance), it may be possible to reuse previous model learned from the previous parameter value, saving time.- When - warm_startis- True, the existing fitted model attributes is used to initialize the new model in a subsequent call to- fit.
- n_components ( - int, optional, default:- None) β Number of components to keep.
 
 - See also - FastICA
- Perform Independent Component Analysis with a fast algorithm. 
- IRIS
- Integral inversion solver for spectroscopic data. 
- MCRALS
- Perform MCR-ALS of a dataset knowing the initial \(C\) or \(S^T\) matrix. 
- NMF
- Non-Negative Matrix Factorization. 
- PCA
- Perform Principal Components Analysis. 
- SIMPLISMA
- SIMPLe to use Interactive Self-modeling Mixture Analysis. 
- SVD
- Perform a Singular Value Decomposition. 
 - Examples - >>> # Init the model >>> model = scp.EFA() >>> # Read an experimental 2D spectra (N x M ) >>> X = scp.read("irdata/nh4y-activation.spg") >>> # Fit the model >>> _ = model.fit(X) >>> # Display components spectra (2 x M) >>> model.n_components = 2 >>> _ = model.components.plot(title="Component spectra") >>> # Get the abstract concentration profile based on the FIFO EFA analysis >>> c = model.transform() >>> # Plot the transposed concentration matrix (2 x N) >>> _ = c.T.plot(title="Concentration") >>> scp.show() - Initialize the BaseConfigurable class. - Parameters:
- log_level (int, optional) β The log level at startup. Default is logging.WARNING. 
- **kwargs (dict) β Additional keyword arguments for configuration. 
 
 - Attributes Summary - Return the X input dataset (eventually modified by the model). - The - Yinput.- Eigenvalues for the backward analysis ( - NDDataset).- NDDatasetwith components in feature space (n_components, n_features).- traitlets.config.Configobject.- Cut-off value. - Eigenvalues for the forward analysis ( - NDDataset).- Return - logoutput.- Number of components to keep. - Object name - Methods Summary - fit(X)- fit_transform(X,Β **kwargs)- Fit the model with X and apply the dimensionality reduction on X. - get_components([n_components])- Return the component's dataset: (selected n_components, n_features). - Not implemented. - parameters([replace,Β removed,Β default])- Alias for - paramsmethod.- params([default])- Return current or default configuration values. - plotmerit([X,Β X_hat])- Plot the input ( - X), reconstructed (- X_hat) and residuals.- Not implemented. - reduce([X])- Apply dimensionality reduction to - X.- reset()- Reset configuration parameters to their default values. - to_dict()- Return config value in a dict form. - transform([X])- Apply dimensionality reduction to - X.- Attributes Documentation - Xο
- Return the X input dataset (eventually modified by the model). 
 - componentsο
- NDDatasetwith components in feature space (n_components, n_features).- See also - get_components
- Retrieve only the specified number of components. 
 
 - configο
- traitlets.config.Configobject.
 - cutoffο
- Cut-off value. 
 - logο
- Return - logoutput.
 - n_componentsο
- Number of components to keep. 
 - nameο
- Object name 
 - Methods Documentation - fit(X)[source]ο
- Fit the - EFAmodel on a- Xdataset.- Parameters:
- X ( - NDDatasetor array-like of shape (n_observations, n_features)) β Training data.
- Returns:
- self β The fitted instance itself. 
 - See also - fit_transform
- Fit the model with an input dataset - Xand apply the dimensionality reduction on- X.
- fit_reduce
- Alias of - fit_transform(Deprecated).
 
 - fit_transform(X, **kwargs)[source]ο
- Fit the model with X and apply the dimensionality reduction on X. - Parameters:
- X ( - NDDatasetor array-like of shape (n_observations, n_features)) β Training data.
- **kwargs (keyword parameters, optional) β See Other Parameters. 
 
- Returns:
- NDDatasetβ Dataset with shape (n_observations, n_components).
- Other Parameters:
- n_components ( - int, optional) β The number of components to use for the reduction. If not given the number of components is eventually the one specified or determined in the- fitprocess.
 
 - get_components(n_components=None)ο
- Return the componentβs dataset: (selected n_components, n_features). - Parameters:
- n_components ( - int, optional, default:- None) β The number of components to keep in the output dataset. If- None, all calculated components are returned.
- Returns:
- NDDatasetβ Dataset with shape (n_components, n_features)
 
 - parameters(replace="params", removed="0.8.0") def parameters(self, default=False)[source]ο
- Alias for - paramsmethod.- Deprecated since version 0.8.0: Use - paramsinstead.
 - plotmerit(X=None, X_hat=None, **kwargs)[source]ο
- Plot the input ( - X), reconstructed (- X_hat) and residuals.- \(X\) and \(\hat{X}\) can be passed as arguments. If not, the - Xattribute is used for \(X`and :math:\)hat{X}`is computed by the- inverse_transformmethod- Parameters:
- X ( - NDDataset, optional) β Original dataset. If is not provided (default), the- Xattribute is used and X_hat is computed using- inverse_transform.
- X_hat ( - NDDataset, optional) β Inverse transformed dataset. if- Xis provided,- X_hatmust also be provided as compuyed externally.
- **kwargs (keyword parameters, optional) β See Other Parameters. 
 
- Returns:
- Axesβ Matplotlib subplot axe.
- Other Parameters:
- colors ( - tupleor- ndarrayof 3 colors, optional) β Colors for- X,- X_hatand residuals- E. in the case of 2D, The default colormap is used for- X. By default, the three colors are- NBlue,- NGreenand- NRed(which are colorblind friendly).
- offset ( - float, optional, default:- None) β Specify the separation (in percent) between the \(X\) , \(X_hat\) and \(E\).
- nb_traces ( - intor- 'all', optional) β Number of lines to display. Default is- 'all'.
- **others (Other keywords parameters) β Parameters passed to the internal - plotmethod of the- Xdataset.
 
 
 - reduce(X=None, **kwargs)[source]ο
- Apply dimensionality reduction to - X.- Parameters:
- X ( - NDDatasetor array-like of shape (n_observations, n_features), optional) β New data, where n_observations is the number of observations and n_features is the number of features. if not provided, the input dataset of the- fitmethod will be used.
- **kwargs (keyword parameters, optional) β See Other Parameters. 
 
- Returns:
- NDDatasetβ Dataset with shape (n_observations, n_components).
- Other Parameters:
- n_components ( - int, optional) β The number of components to use for the reduction. If not given the number of components is eventually the one specified or determined in the- fitprocess.
 - Notes - Deprecated in version 0.6. 
 - transform(X=None, **kwargs)ο
- Apply dimensionality reduction to - X.- Parameters:
- X ( - NDDatasetor array-like of shape (n_observations, n_features), optional) β New data, where n_observations is the number of observations and n_features is the number of features. if not provided, the input dataset of the- fitmethod will be used.
- **kwargs (keyword parameters, optional) β See Other Parameters. 
 
- Returns:
- NDDatasetβ Dataset with shape (n_observations, n_components).
- Other Parameters:
- n_components ( - int, optional) β The number of components to use for the reduction. If not given the number of components is eventually the one specified or determined in the- fitprocess.
 
 
Examples using spectrochempy.EFA
 
 
