==================================
- Python 2.7
- RDkit (http://www.rdkit.org/)
- pandas (https://pandas.pydata.org/)
- matplotlib (https://matplotlib.org/stable/users/installing.html)
- Scikit-learn (https://scikit-learn.org/stable/)
- Streamlit==0.55.2 (https://streamlit.io/)
- Component-contribution (https://pennstateoffice365-my.sharepoint.com/:f:/g/personal/vuu10_psu_edu/EvF9kttgsvlJnhAs1FDRWFcBu0obprfFFjrZKJbq-Yw5sw?e=dPHo2w)
- Openbabel (https://anaconda.org/openbabel/openbabel)
- ChemAxon's Marvin >= 5.11
Installing on windows
- Python 2.7 (https://www.python.org/downloads/release/python-2718/) Recommended-
- Create anaconda environment using command "conda create -n dGPredictor python=2.7"
- activate the env using command "conda activate dGPredictor" or "source activate dGPredictor"
- RDkit
- type command "conda install -c conda-forge rdkit" in your dGPredictor env to install rdkit
- Pandas
- "conda install pandas"
- matplotlib
- "conda install -c conda-forge matplotlib"
- Scikit-learn
- use command "pip install -U scikit-learn"
- Streamlit
- use command "pip install -U streamlit"
- Component-contribution
- download the package folder using the link provided
- save the folder inside dGPredictor (delete the empty component-contribution folder)
- Openbabel
- run "conda install -c conda-forge openbabel"
- ChemAxon's Marvin (Component-contribution use this to estimate PkA values)
- Marvin is only required for adding structures of novel metabolites/compounds that are not in the KEGG database
- instructions (https://chemaxon.com/products/marvin/download)
- add cxcalc.bat to PATH
- you will need to get a license to use ChemAxon (it is free for academic use)
==================================
- Generate model file by "running model_gen.py" using "python model_gen.py"
- run "streamlit run ./streamlit/main.py" from dGPredictor folder
- running KEGG reaction (doesn't require ChemAxon's Marvin) : copy paste the reaction equation into reaction section and click search
- Step 1: decompose the metabolites based on smiles files (see function decompse_ac in decompose_groups.py or notebook )
- Step 2: create group changes vectors (i.e. reaction rules) based on group changes in metabolites of reactions (see get_rxn_rule om decompose_groups.py)
- Step 3: cross validation to check model accuracy (note that for experimental replicates, we take the median value of measurements of the same chemical reaction in different conditions or by different researchers)
- Step 4: linear regression, Ridge Regression and Bayesian Ridge Regression in "predict.py"
- Step 5: Multiple regression models in notebook "analysis_dGPredictor.ipynb"
- See "mini_novoStoic.py"