Metadata-Version: 2.1
Name: aaanalysis
Version: 0.1.3
Summary: Python framework for interpretable protein prediction
License: MIT
Author: Stephan Breimann
Author-email: stephanbreimann@gmail.de
Requires-Python: >=3.9,<=3.11
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Requires-Dist: Pillow (>=10.0.1,<11.0.0)
Requires-Dist: UpSetPlot (>=0.8.0,<0.9.0)
Requires-Dist: cycler (>=0.11.0,<0.12.0)
Requires-Dist: et-xmlfile (>=1.1.0,<2.0.0)
Requires-Dist: fonttools (>=4.37.1,<5.0.0)
Requires-Dist: ipython (>=8.16.1,<9.0.0)
Requires-Dist: joblib (>=1.1.0,<2.0.0)
Requires-Dist: kiwisolver (>=1.4.4,<2.0.0)
Requires-Dist: matplotlib (>=3.5.3,<4.0.0)
Requires-Dist: numpy (>=1.24.4,<2.0.0)
Requires-Dist: openpyxl (>=3.0.10,<4.0.0)
Requires-Dist: packaging (>=21.3,<22.0)
Requires-Dist: pandas (>=2.0.0)
Requires-Dist: patsy (>=0.5.2,<0.6.0)
Requires-Dist: pip (>=23.2.01,<24.0.0)
Requires-Dist: pyparsing (>=3.0.9,<4.0.0)
Requires-Dist: python-dateutil (>=2.8.2,<3.0.0)
Requires-Dist: pytz (>=2022.2.1,<2023.0.0)
Requires-Dist: scikit-learn (>=1.1.2,<2.0.0)
Requires-Dist: scipy (>=1.9.0,<2.0.0)
Requires-Dist: seaborn (>=0.11.2)
Requires-Dist: shap (>=0.44.0,<0.45.0)
Requires-Dist: six (>=1.16.0,<2.0.0)
Requires-Dist: statsmodels (>=0.13.2,<0.14.0)
Requires-Dist: threadpoolctl (>=3.1.0,<4.0.0)
Project-URL: Documentation, https://aaanalysis.readthedocs.io
Project-URL: Repository, https://github.com/breimanntools/aaanalysis
Description-Content-Type: text/x-rst

Welcome to the AAanalysis documentation!
========================================
.. Developer Notes:
    Please update badges in README.rst and vice versa
.. image:: https://github.com/breimanntools/aaanalysis/workflows/Build/badge.svg
   :target: https://github.com/breimanntools/aaanalysis/actions
   :alt: Build Status

.. image:: https://github.com/breimanntools/aaanalysis/workflows/Python-check/badge.svg
   :target: https://github.com/breimanntools/aaanalysis/actions
   :alt: Python-check

.. image:: https://img.shields.io/pypi/status/aaanalysis.svg
   :target: https://pypi.org/project/aaanalysis/
   :alt: PyPI - Status

.. image:: https://img.shields.io/pypi/pyversions/aaanalysis.svg
   :target: https://pypi.python.org/pypi/aaanalysis
   :alt: Supported Python Versions

.. image:: https://img.shields.io/pypi/v/aaanalysis.svg
   :target: https://pypi.python.org/pypi/aaanalysis
   :alt: PyPI - Package Version

.. image:: https://anaconda.org/conda-forge/aaanalysis/badges/version.svg
   :target: https://anaconda.org/conda-forge/aaanalysis
   :alt: Conda - Package Version

.. image:: https://readthedocs.org/projects/aaanalysis/badge/?version=latest
   :target: https://aaanalysis.readthedocs.io/en/latest/?badge=latest
   :alt: Documentation Status

.. image:: https://img.shields.io/github/license/breimanntools/aaanalysis.svg
   :target: https://github.com/breimanntools/aaanalysis/blob/master/LICENSE
   :alt: License

.. image:: https://pepy.tech/badge/aaanalysis
   :target: https://pepy.tech/project/aaanalysis
   :alt: Downloads

**AAanalysis** (Amino Acid analysis) is a Python framework for interpretable sequence-based protein prediction.
Its foundation are the following algorithms:

- **CPP**: Comparative Physicochemical Profiling, a feature engineering algorithm comparing two sets of protein
  sequences to identify the set of most distinctive features.
- **dPULearn**: deterministic Positive-Unlabeled (PU) Learning algorithm to enable training on
  unbalanced and small datasets.
- **AAclust**: k-optimized clustering wrapper framework to select redundancy-reduced sets of numerical scales
  (e.g., amino acid scales).

In addition, AAanalysis provide functions for loading various protein benchmark datasets (**load_data**), amino acid
scales (**load_scales**), and their two-level classification (**AAontology**). We combined **CPP** with the explainable
AI  `SHAP <https://shap.readthedocs.io/en/latest/index.html>`_ framework to explain sample level predictions with
single-residue resolution.

If you are looking to make publication-ready plots with a view lines of code, see our
`Plotting Prelude <https://https://aaanalysis.readthedocs.io/en/latest/generated/plotting_prelude.htmll>`_.

You can find the official documentation at `Read the Docs <https://aaanalysis.readthedocs.io/en/latest/>`_.

Install
=======
**AAanalysis** can be installed either from `PyPi <https://pypi.org/project/aaanalysis>`_ or
`conda-forge <https://anaconda.org/conda-forge/aaanalysis>`_:

.. code-block:: bash

   pip install -u aaanalysis
   or
   conda install -c conda-forge aaanalysis

Contributing
============
We appreciate bug reports, feature requests, or updates on documentation and code. For details, please refer to
`Contributing Guidelines <CONTRIBUTING.rst>`_. These include specifics about AAanalysis and also notes on Test
Guided Development (TGD) using ChatGPT. For further questions or suggestions, please email stephanbreimann@gmail.com.

Citations
=========
If you use AAanalysis in your work, please cite the respective publication as follows:

**AAclust**:
   Breimann and Frishman (2024a),
   *AAclust: k-optimized clustering for selecting redundancy-reduced sets of amino acid scales*,
   `bioRxiv <https://www.biorxiv.org/content/10.1101/2024.02.04.578800v1>`__.

**AAontology**:
   Breimann *et al.* (2024b),
   *AAontology: An ontology of amino acid scales for interpretable machine learning*,
   `bioRxiv <https://www.biorxiv.org/content/10.1101/2023.08.03.551768v1>`__.

**CPP**:
   Breimann and Kamp *et al.* (2024c),
   *Charting γ-secretase substrates by explainable AI*,
   .. # Link if available

**dPULearn**:
   Breimann and Kamp *et al.* (2024c),
   *Charting γ-secretase substrates by explainable AI*,
   .. # Link if available

