A Python library for advanced data analysis algorithms
Project description
DataMutant
A Python library for advanced data analysis algorithms with a modular architecture that supports multiple specialized tools.
๐งฌ What is DataMutant?
DataMutant is designed to be a comprehensive toolkit for data scientists and researchers, providing efficient implementations of advanced algorithms for data analysis, pattern recognition, and machine learning. Each algorithm is organized as a separate module with its own examples and documentation.
๐ Features
- Modular Architecture: Each algorithm is self-contained with examples and detailed documentation
- High Performance: Optimized implementations using PyTorch
- Comprehensive Testing: Full test coverage for all algorithms
- Type Safety: Complete type hints and validation
- Extensible Design: Easy to add new algorithms
๐ฆ Available Algorithms
1. Sublinear Monotonicity Score
- Location:
datamutant.monotonicity_score - Purpose: Measure how close sequences are to being monotonically increasing
- Complexity: O((1/ฮต) log n) - sublinear sampling algorithm
- Documentation: View detailed docs
๐ Installation
pip install datamutant
For development:
pip install datamutant[dev]
๐ฅ Quick Start
import torch
from datamutant.monotonicity_score import sublinear_monotonicity_score
# Analyze sequence monotonicity
sequence = torch.tensor([1.0, 2.0, 3.0, 2.5, 4.0])
score = sublinear_monotonicity_score(sequence)
print(f"Monotonicity score: {score}") # ~0.8
๐๏ธ Project Structure
datamutant/
โโโ datamutant/ # Main package
โ โโโ __init__.py # Package exports
โ โโโ monotonicity_score/ # Monotonicity algorithm
โ โโโ __init__.py # Module exports
โ โโโ sublinear.py # Core algorithm implementation
โ โโโ models.py # Neural network models
โ โโโ README.md # Algorithm documentation
โ โโโ examples/ # Usage examples
โ โโโ basic_usage.py
โ โโโ model_training.py
โโโ tests/ # Comprehensive tests
โ โโโ monotonicity_score/
โ โโโ test_core.py
โ โโโ test_models.py
โโโ setup.py # Package setup
โโโ pyproject.toml # Modern packaging
โโโ README.md # This file
๐ Algorithm Documentation
Each algorithm has its own detailed documentation:
- Sublinear Monotonicity Score: ./datamutant/monotonicity_score/README.md
๐ฏ Examples
Each algorithm includes comprehensive examples in its own directory:
# Run monotonicity score examples
python -m datamutant.monotonicity_score.examples.basic_usage
python -m datamutant.monotonicity_score.examples.model_training
๐งช Testing
Run all tests:
pytest
Run tests for specific algorithms:
pytest tests/monotonicity_score/
๐ค Contributing
- Each new algorithm should be in its own module under
datamutant/ - Include comprehensive documentation in the algorithm's README.md
- Provide examples in the
examples/subdirectory - Add tests in the corresponding
tests/directory - Update this main README with a short description
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file datamutant-0.1.0.tar.gz.
File metadata
- Download URL: datamutant-0.1.0.tar.gz
- Upload date:
- Size: 16.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2729b67cf71a22cca3d21a4901c36c0ce64e646fb2339f961fedb3fad14a6c2b
|
|
| MD5 |
7429c1965eaa4e235a275ff722258e34
|
|
| BLAKE2b-256 |
c8d9ffa984274792e3d00205e449859c38d5cabf62cf9393a0bbe47fbb4466d8
|
File details
Details for the file datamutant-0.1.0-py3-none-any.whl.
File metadata
- Download URL: datamutant-0.1.0-py3-none-any.whl
- Upload date:
- Size: 16.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
01af1d41d17a23462d4a500eb1960a081cfefc2cda6b8906b03fb323bdf0f3a4
|
|
| MD5 |
589ef55469b74b578340f43acabf433c
|
|
| BLAKE2b-256 |
b82302a15186b27cca3b2845a25de804b6f2c30291e801ec8a468e5cf6dc80c0
|