蟒蛇接口
pychembldb的Python项目详细描述
pychembldb是chembldb的python接口
要求
- Python2.7或更高版本(不支持3.x)
- mysql python>;=1.2.4或psycopg2>;=2.5.1
- sqlalchemy>;=0.8.0b2
化学数据库
- pychembldb-0.1.x支持chembl_14
- pychembldb-0.2.x支持chembl_15和chembl_16
- pychembldb-0.3.x支持chembl_17、18、19
设置
安装
pip install pychembldb
或从github安装
git clone https://github.com/kzfm/pychembldb.git cd pychembldb sudo python setup.py install
设置引擎url
如果更改engine_url,则应设置chembl_uri环境变量(默认值:mysql://root@localhost/chembl_18)
例如)PostgreSQL
export CHEMBL_URI="postgresql+psycopg2://localhost/chembl_18" or export CHEMBL_URI="postgresql+psycopg2://USER:PASSWORD@localhost/chembl_18"
基本用法
from pychembldb import * for target in chembldb.query(Target).filter_by(pref_name="Tyrosine-protein kinase ABL"): for assay in target.assays: for activity in assay.activities: print activity.published_value, activity.compound.molecule.structure.standard_inchi_key
示例
根据目标(蛋白质)过滤活性和化合物结构。
from pychembldb import * for target in chembldb.query(Target).filter_by(pref_name="Tyrosine-protein kinase ABL"): for assay in target.assays: for activity in assay.activities: print activity.published_value, activity.compound.molecule.structure.standard_inchi_key
从journal id(doi)中搜索活动和复合结构。
for journal in chembldb.query(Doc).filter_by(doi="10.1016/S0960-894X(01)80693-4"): for assay in journal.assays: for activity in assay.activities: print activity.published_value, activity.compound.molecule.structure.standard_inchi_key
从分子同义词中得到微笑。
chembldb.query(MoleculeSynonym).filter_by(synonyms="Gleevec").first().molecule.structure.canonical_smiles # 'CN1CCN(Cc2ccc(cc2)C(=O)Nc3ccc(C)c(Nc4nccc(n4)c5cccnc5)c3)CC1'
计算对医疗化学有利的化合物的数量。
chembldb.query(CompoundProperty).filter_by(med_chem_friendly='Y').count()
另请参见。
历史记录
0.3.6(2014-09-02)
- 支持Chembldb 19
0.3.4(2014-06-07)
- 更新文档
- 支持空中交通管制分类
0.3.3(2014-06-06)
- 支持Chembldb 18
0.3.2(2014-01-13)
- 修复错误
0.3.1(2013-12-17)
- 支持Chembldb 17
0.2.1(2013-06-15)
- 支持Chembldb 16
0.2.0(2013-02-03)
- 支持Chembldb 15
0.1.1(2013-01-29)
- 几个错误修复程序
- 添加同义词关系
0.1(2013-01-29)
- 首次发布