I would like to use Flexible Discriminant Analysis (FDA) or Mixture Discriminant Analysis (MDA) for dimension reduction on my data using Python. According to "The Elements of Statistical Learning", pp. 438-444, these adaptations of Linear Discriminant Analysis (LDA) seem to be more practical as they allow non-linear regression functions that aim at better class separation.
Is there a tool in Python that already implements these methods? All I found was
- a tool in R from "Elements of Statistical Learning", p. 455: https://cran.r-project.org/web/packages/mda/mda.pdf
- a Python package for Penalised Discriminant Analysis (PDA): https://github.com/RyanCarey/penalized_lda_python
But for MDA or FDA I couldn't find a Python package/library that implements these techniques. Does anyone know of a good source or do I need to code this from scratch?