solphedge


Namesolphedge JSON
Version 0.0.1.post2 PyPI version JSON
download
home_pagehttps://github.com/OlivierBeq/solphedge
SummarypH-dependent solubility predictions for small molecules
upload_time2024-08-29 21:50:33
maintainerOlivier J. M. Béquignon
docs_urlNone
authorOlivier J. M. Béquignon
requires_python>=3.10
licenseNone
keywords ph-dependent solubility cheminformatics qsar
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![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"
}
        
Elapsed time: 0.36500s