FDApy: a Python package for functional data

Steven Golovkine
2024-08-12
Abstract:We introduce FDApy, an open-source Python package for the analysis of functional data. The package provides tools for the representation of (multivariate) functional data defined on different dimensional domains and for functional data that is irregularly sampled. Additionally, dimension reduction techniques are implemented for multivariate and/or multidimensional functional data that are regularly or irregularly sampled. A toolbox for generating functional datasets is also provided. The documentation includes installation and usage instructions, examples on simulated and real datasets and a complete description of the API. FDApy is released under the MIT license. The code and documentation are available at <a class="link-external link-https" href="https://github.com/StevenGolovkine/FDApy" rel="external noopener nofollow">this https URL</a>.
Mathematical Software,Machine Learning,Computation
What problem does this paper attempt to address?
### Problems the Paper Aims to Solve This paper introduces **FDApy**, an open-source Python package for analyzing functional data. Specifically, the paper aims to address the following issues: 1. **Providing versatile data representation tools**: - **Multivariate and multidimensional functional data representation**: The package supports multivariate functional data defined on domains of different dimensions as well as irregularly sampled functional data. - **Dimensionality reduction techniques**: Implements dimensionality reduction techniques for multivariate and/or multidimensional functional data, whether these data are regularly or irregularly sampled. 2. **Simulation toolbox**: - Provides a toolbox for generating functional datasets, allowing users to configure parameters to simulate different clusters in the data. 3. **Visualization tools**: - Includes several visualization tools to help users better understand and analyze the data. 4. **Extensibility for new methods**: - Allows for the easy addition of new methods, such as regression or clustering. ### Research Background and Motivation - **Functional Data Analysis (FDA)**: Functional data analysis is a statistical method used to analyze data that can be represented as functions. These functions can represent measurements over time, space, frequency, probability, etc. - **Limitations of existing tools**: Currently, most functional data analysis software is implemented in R, while there are fewer tools specifically for FDA in the Python community. Existing Python packages like sktime and tslearn mainly focus on time series analysis, but their support for multivariate or multidimensional functional data is limited. ### Main Contributions - **Representation and analysis of functional data**: Provides the ability to create and manipulate general functional data objects, supporting various types of functional data, including densely sampled or irregularly sampled, multivariate, or multidimensional data. - **Dimensionality reduction techniques**: Implements dimensionality reduction techniques to help extract patterns from complex functional datasets. - **Simulation toolbox**: Offers a large simulation toolbox based on basis decomposition, allowing users to configure parameters to simulate different clusters in the data. - **Visualization tools**: Includes several visualization tools to help users better understand and analyze the data. Through these features, FDApy aims to provide researchers and practitioners with a flexible and powerful tool for functional data analysis, helping them uncover valuable insights in complex functional datasets.