Python package to stratify split datasets based on endpoint distributions
Project description
Ivers
This project offers tools for managing data splits, ensuring endpoint distributions are maintained, and presents two novel temporal split techniques: 'leaky' and 'all for free' splits. See the explanation below.
Note: This library was used in this paper PlaceHolder to generate the data splits.
Features
- Temporal Leaky: Allows for forward-leakage in your data to simulate real-world scenarios where future data might influence the model subtly.
- Temporal AllForFree: Provides a stricter temporal separation, ensuring that the training data is entirely independent of the test set, suitable for rigorous testing of model predictions over time.
- Temporal Fold Split: Implements a novel approach to increasing the training set size successively across multiple folds based on the temporal time sequence
- Stratified Endpoint Split: Our library introduces a stratified endpoint split, crucial for maintaining a consistent distribution of data across different categories or endpoints in your datasets. Especially useful in scenarios where endpoint distributions are critical, such as in cheminformatics and bioinformatics.
- Cross-Validation Support: Integrates capabilities to ensure that each cross-validation split maintains endpoint distribution, ideal for developing models that are generalizable across varied data conditions.
Integration with Chemprop
- By setting the
chemprop
variable totrue
, the library will generate splits compatible with the Chemprop library. This ensures that the features and train-test splits are generated in a way that can easily be used with Chemprop.
Getting Started or Contributing
To get started with this library, clone the repository and install the required dependencies:
git clone https://github.com/IversOhlsson/ivers.git
cd ivers
pip install -r requirements.txt
Installation via pip
You can also install the package via pip:
pip install ivers
We welcome contributions! Feel free to open issues or pull requests on our GitHub repository.
Guide
Reference
when using this library, please cite the following paper:
@article{Ivers_1,
title={PlaceHolder},
author={PlaceHolder},
journal={PlaceHolder},
volume={PlaceHolder},
number={PlaceHolder},
pages={PlaceHolder},
year={PlaceHolder},
publisher={PlaceHolder}
}
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
File details
Details for the file ivers-0.1.24.tar.gz
.
File metadata
- Download URL: ivers-0.1.24.tar.gz
- Upload date:
- Size: 16.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccb1c2b97bcfba37a3a340e1faaf842a054a578e03c96634ce30a08d8d45f214 |
|
MD5 | 64b928ad8afd831b995d3f0190d0e340 |
|
BLAKE2b-256 | 558038d022b2aa5b30affb60000251abff5e82d50483740ad5ac87aa60ce0b50 |
File details
Details for the file ivers-0.1.24-py3-none-any.whl
.
File metadata
- Download URL: ivers-0.1.24-py3-none-any.whl
- Upload date:
- Size: 22.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 79f03d8a6b33a56cf2df420bdd463c7fbddd0b9b95f91442192b450fa5b5b416 |
|
MD5 | ca2737b69cc2d7939a5b27a59e644b34 |
|
BLAKE2b-256 | d89d917bc1d98a07b2d1c4ce462fbf9797e3f6d7e8350743afe9c41863d9b6a5 |