Package: genra
Generalised Read-Across (GenRA) in PythonRead-Acrossis widely used to fill data-gaps for untested chemicals. We developedGenralised 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 thescikit-learnestimator. We also describe two potential uses-cases for genra-py that uses published chemical structure, bioactivity and toxicity data.Easy startspip install genraor 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-pyCopy/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.
Typedocker-compose -f genra-docker-compose.yml upTo stop the container simply type:docker-compose -f genra-docker-compose.yml downAlternativesRunning the notebooks in this repository requires Python 3,Anaconda,Jupterand some additional configuration.Install Python 3, anaconda/conda and Jupyter LabClone this repo:git clone https://github.com/i-shah/genra-py.gitGo into genra-py directory and creategenra-pyconda environment:make -n create_environmentActivate conda environment:conda activate genra-pyAdd this conda environment as a kernel to jupyter-lab:ipython kernel install --user --name=genra-pyCopy 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/figsFurther details are provided in the notebooks/manual directory.Seehttps://github.com/patlewig/UNC_Raxand run the example using the Binderhttps://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