Metadata-Version: 2.5
Name: q0m4kmckne
Version: 0.1.0a1
Summary: Highly customisable and composable pipeline implementation for common methods of biological age estimation
Project-URL: Homepage, https://github.com/notna07/biological-aging-lab
Project-URL: Bug Tracker, https://github.com/notna07/biological-aging-lab/issues
Author: Anton D. Lautrup
License-File: LICENSE
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.10
Requires-Dist: lxml>=6.1.1
Requires-Dist: matplotlib>=3.10.9
Requires-Dist: networkx>=3.0
Requires-Dist: numpy>=1.23
Requires-Dist: pandas>=1.5
Requires-Dist: scikit-learn>=1.2
Requires-Dist: statsmodels>=0.14.6
Requires-Dist: sympy>=1.14.0
Provides-Extra: dashboard
Requires-Dist: streamlit>=1.38; extra == 'dashboard'
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == 'dev'
Description-Content-Type: text/markdown

# Biological Aging Lab

The Biological Aging Lab is a Python library for deriving dataset specific formulas for biological aging. It provides a set of tools and functions for processing, analyzing, and visualizing data related to biological aging in a highly modular fashion based on directed acyclic graphs (DAGs). 

The library implements common methods of biological age estimation research such as MLR, PCA, and KDM, alongside the common data preprocessing modules to narrow in on the most relevant features and remove collinear features if applicable.

The library provides three levels of abstraction for users with different levels of expertise:

- **High-level dashboard interface**: A user-friendly dashboard for users with limited programming experience, allowing them to easily access the main pipeline recipes and results. For now this view is limited to the main pipeline recipes.
- **Mid-level recipe interface**: A global method that can be imported into any Python work-flow, that allows access to the main pipelines. without needing to string the modules together manually. This interface is intended for users with some programming experience, who want to use the library in their own workflows.
- **Low-level module interface**: Module level access to the library's functions and classes, allowing users to build their own pipelines and workflows from scratch. This interface is intended for advanced users, who need full control over the implementation.

## Installation
The library requires Python 3.10 or higher and can be installed via pip. To install the library, run the following command in your console:

```bash
pip install q0m4kmckne #biological-aging-lab
```

Installing with option [dashboard] will also install the optional dashboard dependency (streamlit):
```bash
pip install q0m4kmckne[dashboard]
```

## Dashboard

The implementation also includes a dashboard as a friendly user interface for accessing the main pipeline recipes and results. The dashboard is bundled as a script, but is also accessible throught the python intrepreter module system (i.e, to bypass strict execution policies).

To run the dashboard, run one of the following commands in the console:
```bash
# To run the dashboard script
biological-aging-lab-dashboard

# To run the dashboard module
python -m biological_aging_lab.dashboard
```
