[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
![Windows](https://img.shields.io/badge/Windows-0078D6?style=for-the-badge&logo=windows&logoColor=white) ![Linux](https://img.shields.io/badge/Linux-FCC624?style=for-the-badge&logo=linux&logoColor=black)
# <sup>:notes:</sup>:saxophone: Sol*pH*<sup>edge</sup>
pH-dependent solubility predictions for small molecules
## Installation
:warning: MacOS is not supported by SolpH<sup>edge</sup>. :warning:
OpenBabel is the only dependency of SolpH<sup>edge</sup> not available through PyPI. It can be installed with:
```bash
conda install openbabel -c conda-forge
```
Then SolpH<sup>edge</sup> and other dependencies can be isntalled with:
```bash
pip install solphedge
```
## Get started
```python
from solphedge import SolpH
smiles_list = ['CC(C1=CC(=CC=C1)C(=O)C2=CC=CC=C2)C(=O)O',
'CC(=O)CC(C1=CC=CC=C1)C2=C(C3=CC=CC=C3OC2=O)O',
'C1=CC=C(C(=C1)CC(=O)O)NC2=C(C=CC=C2Cl)Cl',
'C1=CC(=C(C=C1C2=C(C=C(C=C2)F)F)C(=O)O)O',
'CC1=CN=C(C(=C1OC)C)CS(=O)C2=NC3=C(N2)C=C(C=C3)OC',
'C1=CC=C(C=C1)CC2NC3=C(C=C(C(=C3)C(F)(F)F)S(=O)(=O)N)S(=O)(=O)N2',
'CC1=CN=C(S1)NC(=O)C2=C(C3=CC=CC=C3S(=O)(=O)N2C)O',
'C#CCO[C@H]1CN2CCC1CC2',
'CC(C)CC1=CC=C(C=C1)C(C)C(=O)O']
model = SolpH()
print(model.predict(smiles_list))
# molecule -logS (pH=7.4) delta logS (pH=7.4 - pH=1.0) composite -logS (pH=1.0) solubility (pH=7.4; mM) solubility (pH=1.0; mM)
# 0 CC(C1=CC(=CC=C1)C(=O)C2=CC=CC=C2)C(=O)O 3.859 2.910 6.770 0.138 0.000
# 1 CC(=O)CC(C1=CC=CC=C1)C2=C(C3=CC=CC=C3OC2=O)O 4.793 0.578 5.370 0.016 0.004
# 2 C1=CC=C(C(=C1)CC(=O)O)NC2=C(C=CC=C2Cl)Cl 3.792 3.072 6.864 0.161 0.000
# 3 C1=CC(=C(C=C1C2=C(C=C(C=C2)F)F)C(=O)O)O 4.113 2.768 6.881 0.077 0.000
# 4 CC1=CN=C(C(=C1OC)C)CS(=O)C2=NC3=C(N2)C=C(C=C3)OC 3.862 0.000 3.862 0.137 0.137
# 5 C1=CC=C(C=C1)CC2NC3=C(C=C(C(=C3)C(F)(F)F)S(=O)... 4.042 0.127 4.169 0.091 0.068
# 6 CC1=CN=C(S1)NC(=O)C2=C(C3=CC=CC=C3S(=O)(=O)N2C)O 4.723 0.000 4.723 0.019 0.019
# 7 C#CCO[C@H]1CN2CCC1CC2 3.749 0.000 3.749 0.178 0.178
# 8 CC(C)CC1=CC=C(C=C1)C(C)C(=O)O 3.920 1.473 5.393 0.120 0.004
```
## Other parameters
```python
class SolpH(standardize: bool = True, standardizer: str = 'papyrus', njobs: int = 1):
...
```
#### Parameters
- ***standardize : bool***
Should input molecules or SMILES be standardized before making predictions.
- ***standardizer : str = {['chembl'](https://github.com/chembl/ChEMBL_Structure_Pipeline); ['papyrus'](https://github.com/OlivierBeq/Papyrus_structure_pipeline)}***
Molecular standardizer to be applied.
- ***njobs : int***
Maximum number of simultaneous processes calculating molecular descriptors prior to predictions.
```python
...
def predict(mols: Chem.Mol | list[Chem.Mol] | str | list[str], round: int = 3, out_units: str='mM'):
```
#### Parameters
- ***mols : str | rdkit.Chem.Mol | list[str] | list[rdkit.Chem.Mol]***
Input molecule(s) or SMILES.
- ***round : int***
Number of decimals to round the result.
- ***out_units : str = {'M'; 'mM'; 'uM'; 'nM'; 'pM'}***
Units to convert log-scale molar solubilities to.
Raw data
{
"_id": null,
"home_page": "https://github.com/OlivierBeq/solphedge",
"name": "solphedge",
"maintainer": "Olivier J. M. B\u00e9quignon",
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": "\"olivier.bequignon.maintainer@gmail.com\"",
"keywords": "pH-dependent solubility, cheminformatics, QSAR",
"author": "Olivier J. M. B\u00e9quignon",
"author_email": "\"olivier.bequignon.maintainer@gmail.com\"",
"download_url": "https://files.pythonhosted.org/packages/a4/e2/8948dea09ff87be67772b7cbf6e136a367aaa0ab76ae86e1bcc8924147ee/solphedge-0.0.1.post2.tar.gz",
"platform": null,
"description": "[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\r\n\r\n![Windows](https://img.shields.io/badge/Windows-0078D6?style=for-the-badge&logo=windows&logoColor=white) ![Linux](https://img.shields.io/badge/Linux-FCC624?style=for-the-badge&logo=linux&logoColor=black) \r\n\r\n# <sup>:notes:</sup>:saxophone: Sol*pH*<sup>edge</sup>\r\n\r\npH-dependent solubility predictions for small molecules\r\n\r\n\r\n## Installation\r\n\r\n:warning: MacOS is not supported by SolpH<sup>edge</sup>. :warning:\r\n\r\nOpenBabel is the only dependency of SolpH<sup>edge</sup> not available through PyPI. It can be installed with:\r\n\r\n```bash\r\nconda install openbabel -c conda-forge\r\n```\r\n\r\nThen SolpH<sup>edge</sup> and other dependencies can be isntalled with: \r\n\r\n```bash\r\npip install solphedge\r\n```\r\n\r\n## Get started\r\n\r\n```python\r\nfrom solphedge import SolpH\r\n\r\nsmiles_list = ['CC(C1=CC(=CC=C1)C(=O)C2=CC=CC=C2)C(=O)O',\r\n 'CC(=O)CC(C1=CC=CC=C1)C2=C(C3=CC=CC=C3OC2=O)O',\r\n 'C1=CC=C(C(=C1)CC(=O)O)NC2=C(C=CC=C2Cl)Cl',\r\n 'C1=CC(=C(C=C1C2=C(C=C(C=C2)F)F)C(=O)O)O',\r\n 'CC1=CN=C(C(=C1OC)C)CS(=O)C2=NC3=C(N2)C=C(C=C3)OC',\r\n 'C1=CC=C(C=C1)CC2NC3=C(C=C(C(=C3)C(F)(F)F)S(=O)(=O)N)S(=O)(=O)N2',\r\n 'CC1=CN=C(S1)NC(=O)C2=C(C3=CC=CC=C3S(=O)(=O)N2C)O',\r\n 'C#CCO[C@H]1CN2CCC1CC2',\r\n 'CC(C)CC1=CC=C(C=C1)C(C)C(=O)O']\r\nmodel = SolpH()\r\nprint(model.predict(smiles_list))\r\n# molecule -logS (pH=7.4) delta logS (pH=7.4 - pH=1.0) composite -logS (pH=1.0) solubility (pH=7.4; mM) solubility (pH=1.0; mM)\r\n# 0 CC(C1=CC(=CC=C1)C(=O)C2=CC=CC=C2)C(=O)O 3.859 2.910 6.770 0.138 0.000\r\n# 1 CC(=O)CC(C1=CC=CC=C1)C2=C(C3=CC=CC=C3OC2=O)O 4.793 0.578 5.370 0.016 0.004\r\n# 2 C1=CC=C(C(=C1)CC(=O)O)NC2=C(C=CC=C2Cl)Cl 3.792 3.072 6.864 0.161 0.000\r\n# 3 C1=CC(=C(C=C1C2=C(C=C(C=C2)F)F)C(=O)O)O 4.113 2.768 6.881 0.077 0.000\r\n# 4 CC1=CN=C(C(=C1OC)C)CS(=O)C2=NC3=C(N2)C=C(C=C3)OC 3.862 0.000 3.862 0.137 0.137\r\n# 5 C1=CC=C(C=C1)CC2NC3=C(C=C(C(=C3)C(F)(F)F)S(=O)... 4.042 0.127 4.169 0.091 0.068\r\n# 6 CC1=CN=C(S1)NC(=O)C2=C(C3=CC=CC=C3S(=O)(=O)N2C)O 4.723 0.000 4.723 0.019 0.019\r\n# 7 C#CCO[C@H]1CN2CCC1CC2 3.749 0.000 3.749 0.178 0.178\r\n# 8 CC(C)CC1=CC=C(C=C1)C(C)C(=O)O 3.920 1.473 5.393 0.120 0.004\r\n```\r\n\r\n## Other parameters\r\n\r\n```python\r\nclass SolpH(standardize: bool = True, standardizer: str = 'papyrus', njobs: int = 1):\r\n ...\r\n```\r\n\r\n#### Parameters\r\n\r\n- ***standardize : bool*** \r\n Should input molecules or SMILES be standardized before making predictions.\r\n- ***standardizer : str = {['chembl'](https://github.com/chembl/ChEMBL_Structure_Pipeline); ['papyrus'](https://github.com/OlivierBeq/Papyrus_structure_pipeline)}*** \r\n Molecular standardizer to be applied.\r\n- ***njobs : int*** \r\n Maximum number of simultaneous processes calculating molecular descriptors prior to predictions.\r\n\r\n```python\r\n ...\r\n def predict(mols: Chem.Mol | list[Chem.Mol] | str | list[str], round: int = 3, out_units: str='mM'):\r\n```\r\n\r\n#### Parameters\r\n\r\n- ***mols : str | rdkit.Chem.Mol | list[str] | list[rdkit.Chem.Mol]*** \r\n Input molecule(s) or SMILES.\r\n- ***round : int*** \r\n Number of decimals to round the result.\r\n- ***out_units : str = {'M'; 'mM'; 'uM'; 'nM'; 'pM'}*** \r\n Units to convert log-scale molar solubilities to.\r\n",
"bugtrack_url": null,
"license": null,
"summary": "pH-dependent solubility predictions for small molecules",
"version": "0.0.1.post2",
"project_urls": {
"Homepage": "https://github.com/OlivierBeq/solphedge"
},
"split_keywords": [
"ph-dependent solubility",
" cheminformatics",
" qsar"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "91059dd8d4570a9032a76e9a4fec747ce054a359c52d46bd37634d0ba9a636ee",
"md5": "4b4aeb932719af7fb0b7be5d66f59616",
"sha256": "47fbab47c80190df506f8d4c6e02c3eb63ecd6c2f620278319d1ee8bd9b8643f"
},
"downloads": -1,
"filename": "solphedge-0.0.1.post2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "4b4aeb932719af7fb0b7be5d66f59616",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 14319882,
"upload_time": "2024-08-29T21:50:04",
"upload_time_iso_8601": "2024-08-29T21:50:04.089927Z",
"url": "https://files.pythonhosted.org/packages/91/05/9dd8d4570a9032a76e9a4fec747ce054a359c52d46bd37634d0ba9a636ee/solphedge-0.0.1.post2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a4e28948dea09ff87be67772b7cbf6e136a367aaa0ab76ae86e1bcc8924147ee",
"md5": "1899bfd2f5e991bcde8c1f3c4e751038",
"sha256": "eefba31cdf5c20d7eb14332768453c8c349e1bdbc41c7fc5079987033ce8358d"
},
"downloads": -1,
"filename": "solphedge-0.0.1.post2.tar.gz",
"has_sig": false,
"md5_digest": "1899bfd2f5e991bcde8c1f3c4e751038",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 14325892,
"upload_time": "2024-08-29T21:50:33",
"upload_time_iso_8601": "2024-08-29T21:50:33.630594Z",
"url": "https://files.pythonhosted.org/packages/a4/e2/8948dea09ff87be67772b7cbf6e136a367aaa0ab76ae86e1bcc8924147ee/solphedge-0.0.1.post2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-29 21:50:33",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "OlivierBeq",
"github_project": "solphedge",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"tox": true,
"lcname": "solphedge"
}