D3pockets

目的:用于蛋白动态行为和成药性评价表设计
重新设计 D3pockets数据库表
1.蛋白信息表(uniprotid,pdbid,ligand(id)
2.配体结构表(ligand(id),smiles, InChI, InChIKey
3.口袋信息表 (pocketid, pdbid, pocket_type, binding_ligand)
4.口袋静态特征表(pocketid, volume, num_residue, second_H,second_B, asa ,residue_depth, hydrophilic, hydrophobic, hydrophobic_half, HSE_UP, HSE_DOWN ,stable, coverage,
5.模拟轨迹表:(trajid, pdbid,, source , xtc_file, topfile,
6.模拟信息表:(simulation_id, pdbid, simulation_time, source_software,
7.口袋动态特征表:(
8.残基作用表:(
留个小尾巴:利用pdb数据库补全蛋白信息表
----------------------------------------------以下是25.11.6前的设计
蛋白信息表(uniprotid,pdbid,ligand
配体结构表(ligand,smiles, InChI, InChIKey
动力学模拟表(pdbid, xtc_file, frames_file, source,stimulate_time
口袋表(pocket_id,pocket_type,method,features, binding_ligand
#比较建议的话,xtc_file和frame_files命名也要采用特定的格式,这个是后话了。
#pockets_id 约定:pockets_id='pdbid+p+[l,nl]+size_rate'+number
#pdbid就是source蛋白的pdbid,p表示pocket, l表示至少有一种配体结合,nl表示一个配体都没有在这里结合。size_rate表示希望能得出一种特征描述符,现在暂时用一个体积的比率描述:size_rate=sizei/average_size
#pocket_type:[virtual, real]实际上和pocket_id中nl 和l对应,real对应l,是由实际配体生成的口袋,nl对应virtual,是通过方法生成。
#method:标识口袋生成的方法。如voroni or semi-voroni.etc.
ER分析:
protein(uniprotid)-1:n-pdbid-1:m-ligand
ligand-1:1-smiles/InChI/InChIKey
pdbid-1:n-xtc_file,xtc_file-1:1-stimulate_time
pdbid-1:n-frames_files, frames_file-1:1-stimulate_time
pdbid-1:n-pocket_id-1:1-pockets_type-1:1-method-1:1-features
重新设计一下表:
蛋白信息表(uniprotid,pdbid,ligand)
配体信息表(ligand, smiles, InChI, InChIKey)
动力学模拟表(pdbid, chain, pdb_file,xtc_file, frames_file, stimulate_time,source)
口袋表:(pocket_id, pocket_type, method, source_pdbid, binding_ligand, verified)
#比较建议的话,xtc_file和frame_files命名也要采用特定的格式,这个是后话了。
#pockets_id 约定:pockets_id='pdbid+p+[l,nl]+size_rate'+number
#pdbid就是source蛋白的pdbid,p表示pocket, l表示至少有一种配体结合,nl表示一个配体都没有在这里结合。size_rate表示希望能得出一种特征描述符,现在暂时用一个体积的比率描述:size_rate=sizei/average_size
#pocket_type:[virtual, real]实际上和pocket_id中nl 和l对应,real对应l,是由实际配体生成的口袋,nl对应virtual,是通过方法生成。
#method:标识口袋生成的方法。如voroni or semi-voroni.etc.
#verified: 标记这个口袋的配体有没有经过实验验证
#约定 chain属性值为ZXY的时候,表示整个蛋白。
75.2~D3pockets/shs,开始构建数据库。
import_protein_info.py脚本导入蛋白信息表,其中uniprotid有为null的情况,设置为unknown,之后我再确认下什么情况。
换了个api,补充了这200多个unknown的,蛋白信息表弄完了
#好像有些pdbid晶体结构就是没有对应uniprotid,例如7jrq
配体结构表中缺失一部分配体的结构:
配体:01S 0D3 0DB 0DY 0E9 0ED 0EK 0EM 0HZ 0IU 0PJ 0QB 0QG 0QH 0QN 0Z0 0ZB 0ZC 0ZI 2Z3 UNL UNX
然后动力学模拟表,设计的不太好,先不导入frames_file和stimulate_time....这个表设计的不好
frames_file标记为unknown,stimulate_time的先定义为2
导入18121个记录,其中有42各重复的,有来自不同数据集的,有同一个数据集中不同链的。
照强师兄的成药的蛋白:
'1A4G', '1HPK', '1HPV', '1HWK', '1HZE', '1IHI', '1ITU', '1J3J', '1J8U', '1JKH',
            '1JR1', '1JU6', '1K4T', '1KVL', '1MRL', '1NB9', '1NHZ', '1OHR', '1QKN', '1QYX',
            '1S2Y', '1T46', '1UDT', '1Y0X', '1Z95', '1ZUC', '2AB2', '2F94', '2GQG', '2OCF',
            '2P16', '2VDM', '2W4X', '2WGJ', '2YDO', '3B6R', '3C6M', '3D91', '3FHX', '3G5D',
            '3G9E', '3GWX', '3H0A', '3HS4', '3L4W', '3ML5', '3MZE', '3N23', '3PYY', '3QEL',
            '3RUK', '3S7S', '3TIC', '3TVX', '4ANQ', '4C2P', '4DRI', '4EY7', '4G5J', '4HFP',
            '4LU3', '4LXZ', '4MS4', '4O2B', '4PE5', '4TZU', '4XV2','3G8I', '4BDS', '4U15', '3G0B', '4LNX', '3VW7', '1PK2' #实际上只有74唯一的
 75.2~D3pockets/analysis/query_specific_pdbids.py 
 成功连接到MySQL数据库
找到 35 条匹配记录
匹配的pdbid列表: 1a4g, 1hpv, 1jr1, 1nhz, 1ohr, 1qkn, 1t46, 1udt, 1y0x, 1z95, 1zuc, 2f94, 2p16, 2w4x, 2wgj, 2ydo, 3d91, 3g0b, 3g5d, 3g8i, 3g9e, 3h0a, 3hs4, 3ml5, 3n23, 3pyy, 3qel, 3tic, 3tvx, 3vw7, 4anq, 4bds, 4hfp, 4lxz, 4xv2
结果已保存到 specific_pdbids_report.csv
数据库连接已关闭
pdbidchainsource
1a4gZMISATO
1hpvZMISATO
1jr1ZMISATO
1nhzZMISATO
1ohrZMISATO
1qknZMISATO
1t46ZMISATO
1udtZMISATO
1y0xZMISATO
1z95ZMISATO
1zucZMISATO
2f94ZMISATO
2p16ZMISATO
2w4xZMISATO
2wgjZMISATO
2ydoZMISATO
3d91ZMISATO
3g0bZMISATO
3g5dZMISATO
3g8iZMISATO
3g9eZMISATO
3h0aZMISATO
3hs4ZMISATO
3ml5ZMISATO
3n23ZMISATO
3pyyZMISATO
3qelZMISATO
3ticZMISATO
3tvxZMISATO
3vw7ZMISATO
4anqZMISATO
4bdsZMISATO
4hfpZMISATO
4lxzZMISATO
4xv2ZMISATO