Generalised Read-Across (GenRA) in Python
Read-Across is widely used to fill data-gaps for untested chemicals. We developed Genralised Read-Across (GenRA) as a computational toxicology tool to mimic a human expert’s manual reasoning based on similarity-weighted activity. This repository contains a Python 3 implementation for GenRA, called genra-py, which is based on the scikit-learn estimator. We also describe two potential uses-cases for genra-py that uses published chemical structure, bioactivity and toxicity data.
Easy starts
pip install genra
or try our Docker image from on dockerhub at [https://hub.docker.com/r/patlewig/genra-py]
The image contains the scipy Jupyter notebook, RDKit and a pip installable version of genra-py (https://github.com/i-shah/genra-py/).
In a terminal type:
docker run --rm -p 8888:8888 -e JUPYTER_ENABLE_LAB=yes --user $(id -u):$(id -g) --group-add users -v "$PWD":/home/jovyan patlewig/genra-py
Copy/paste the resulting url link into a new browser window. This should start the Jupyter lab session from your current working directory.
To avoid typing the long argument in the terminal, using docker-compose is an alternative means of running the container.
Type docker-compose -f genra-docker-compose.yml up
To stop the container simply type:
docker-compose -f genra-docker-compose.yml down
Alternatives
Running the notebooks in this repository requires Python 3, Anaconda, Jupter and some additional configuration.
- Install Python 3, anaconda/conda and Jupyter Lab
- Clone this repo:
git clone https://github.com/i-shah/genra-py.git - Go into genra-py directory and create genra-py conda environment:
make -n create_environment - Activate conda environment:
conda activate genra-py - Add this conda environment as a kernel to jupyter-lab:
ipython kernel install --user --name=genra-py - Copy the notebooks/dotenv file to notebooks/.env and edit the environemnt variables (replace path_to_top with the correct directory name):
TOP=path_to_top/genra-py SRC=path_to_top/genra-py/src DAT=path_to_top/genra-py/data FIG=path_to_top/genra-py/figs
Further details are provided in the notebooks/manual directory.
See https://github.com/patlewig/UNC_Rax and run the example using the Binder https://mybinder.org/
Project Organization
├── LICENSE
├── Makefile <- Makefile with commands like `make data` or `make train`
├── README.md <- The top-level README for developers using this project.
├── data <- Data from public domain sources.
│ └─ shah-2016 <- Data from https://doi.org/10.1016/j.yrtph.2016.05.008
│ └─ helman-2019 <- Data from https://doi.org/10.1016/j.yrtph.2016.05.008
|
├── notebooks <- Jupyter notebooks
| |
| ├─dotenv <- copy this to ".env" and edit this file
| ├─app-note <- use-cases described in manuscript
| └─manual <- user-manual as a jupyter notebook
│
├── requirements.txt <- The requirements file for reproducing the analysis environment, e.g.
│ generated with `pip freeze > requirements.txt`
├── genra-py.yml <- The spec for creating a conda environment.
| conda env create -f condaenv.yml
├── dist <- Source and Wheel Distributions
|
└── genra <- Source code
├─chm <- Chemical structure processing
├─rax <- Read Across prediction
└─utl <- Utilities
Metadata
Release files for genra 0.2.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| genra-0.2.3.tar.gz | 25.3 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| genra-0.2.3-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 53.1 kB
Release files / genra-0.2.3.tar.gz
| Download URL | genra-0.2.3.tar.gz |
|---|---|
| Size | 25.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b8f3c8f6258e04ad24b196a1d41aced36646c0dc5ff18d2f9083f9defa555ac0
|
|
BLAKE2b-256 checksum How to use checksums |
a66a6f9251eb4682094af3399833c694f6c2d28cc3f86a3c3bf6f4091f4e6b17
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.13
|
Release files / genra-0.2.3-py2.py3-none-any.whl
| Download URL | genra-0.2.3-py2.py3-none-any.whl |
|---|---|
| Size | 27.8 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
d0f135f633aa4b9644b975975182808de467721b20e0fbd95a0572fb8c5e8a0a
|
|
BLAKE2b-256 checksum How to use checksums |
855b5dff3181ea4c2a05b61d1642e2360ef3568dd4f7f3c48f3712967ba6875a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.13
|
Security for genra 0.2.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.