Welcome to ICSpyLab documentation!
Overview
Invariant Coordinate Selection (ICS) is a data transformation method. It transforms the data, via the simultaneous diagonalization of two scatter matrices, into an invariant coordinate system or independent components, depending on the underlying assumptions. It is particularly useful for dimension reduction. Unlike PCA, ICS is not based on variance maximization but on the maximization/minimization of a generalized kurtosis, and it is invariant not only to orthogonal data transformations but to any affine transformation.
This package brings the main functionalities of the ICS R package to Python, offering tools for identifying and selecting invariant coordinates in multivariate data. It includes various covariance estimators, transformation settings, and plotting utilities. Our extensive testing ensures results consistent with the R package, making it easy for users to transition from R to Python or start fresh with ICS.
You can find the source code for this project on our GitHub Repository.
Key Features
Implementation of the ICS model
Detailed summary of the results
Plotting capabilities for transformed data (coming soon)
Scatter Matrices
Installation
For installation instructions, see the Installation page.
Usage
For examples and usage, see the Usage page.
API Documentation
The ICSpyLab package provides several modules to work with invariant coordinate selection. For detailed information on each module, including available functions and their usage, see the following sections:
ICS: Core functions and classes for performing invariant coordinate selection.
Plot: Functions for visualizing the results of ICS analysis.
Scatter: Tools for generating scatter plots and other visualizations.
Utils: Utility functions to support the main functionalities.
Each section includes detailed descriptions, parameter information, return types, and usage examples to help you effectively use the package.
Testing
For details on testing, see the Testing page.
Contributors
For a list of contributors and their contact information, see the Contributors page.
References
For references, see the References page.