scikit-fda: Functional Data Analysis in Python
Functional Data Analysis, or FDA, is the field of Statistics that analyses data that depend on a continuous parameter.
This package offers classes, methods and functions to give support to FDA in Python. Includes a wide range of utils to work with functional data, and its representation, exploratory analysis, or preprocessing, among other tasks such as inference, classification, regression or clustering of functional data. See documentation for further information on the features included in the package.
The documentation is available at fda.readthedocs.io/en/stable/, which includes detailed information of the different modules, classes and methods of the package, along with several examples showing different functionalities.
The documentation of the latest version, corresponding with the develop version of the package, can be found at fda.readthedocs.io/en/latest/.
Currently, scikit-fda is available in Python 3.6 and 3.7, regardless of the platform. The stable version can be installed via PyPI:
pip install scikit-fda
Installation from source
It is possible to install the latest version of the package, available in the develop branch, by cloning this repository and doing a manual installation.
git clone https://github.com/GAA-UAM/scikit-fda.git pip install ./scikit-fda
Make sure that your default Python version is currently supported, or change the python and pip commands by specifying a version, such as
git clone https://github.com/GAA-UAM/scikit-fda.git python3.6 -m pip install ./scikit-fda
scikit-fda depends on the following packages:
- cython - Python to C compiler
- fdasrsf - SRSF framework
- findiff - Finite differences
- matplotlib - Plotting with Python
- multimethod - Multiple dispatch
- numpy - The fundamental package for scientific computing with Python
- pandas - Powerful Python data analysis toolkit
- rdata - Reader of R datasets in .rda format in Python
- scikit-datasets - Scikit-learn compatible datasets
- scikit-learn - Machine learning in Python
- scipy - Scientific computation in Python
- setuptools - Python Packaging
The dependencies are automatically installed.
All contributions are welcome. You can help this project grow in multiple ways, from creating an issue, reporting an improvement or a bug, to doing a repository fork and creating a pull request to the development branch.
The people involved at some point in the development of the package can be found in the contributors file.