首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从蛋白质数据库中提取多个蛋白质序列及其二级结构

从蛋白质数据库中提取多个蛋白质序列及其二级结构
EN

Stack Overflow用户
提问于 2017-04-03 14:04:18
回答 2查看 207关注 0票数 0

我想从任何蛋白质数据库中提取蛋白质序列和它们相应的二级结构,RCSB说。我只需要短序列和它们的二级结构。就像,

代码语言:javascript
复制
ATRWGUVT     Helix

即使序列很长,它也很好,但我希望在结尾处有一个标记来表示它的二级结构。是否有任何编程工具或任何可用于此的工具。

正如我上面所展示的,我只想要这么少的信息。我怎样才能做到这一点?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-04-04 10:34:54

您可以使用DSSP

DSSP的输出在“解释”中得到了广泛的解释。产出的简短摘要如下:

代码语言:javascript
复制
H = α-helix
B = residue in isolated β-bridge
E = extended strand, participates in β ladder
G = 3-helix (310 helix)
I = 5 helix (π-helix)
T = hydrogen bonded turn
S = bend
票数 2
EN

Stack Overflow用户

发布于 2017-07-08 09:24:17

代码语言:javascript
复制
from Bio.PDB import *
from distutils import spawn

提取顺序:

代码语言:javascript
复制
def get_seq(pdbfile):
 p = PDBParser(PERMISSIVE=0)
 structure = p.get_structure('test', pdbfile)
 ppb = PPBuilder()
 seq = ''
 for pp in ppb.build_peptides(structure):
  seq += pp.get_sequence()

 return seq

如前面所解释的,用DSSP提取二级结构:

代码语言:javascript
复制
def get_secondary_struc(pdbfile):
    # get secondary structure info for whole pdb.
    if not spawn.find_executable("dssp"):
        sys.stderr.write('dssp executable needs to be in folder')
        sys.exit(1)
    p = PDBParser(PERMISSIVE=0)
    ppb = PPBuilder()
    structure = p.get_structure('test', pdbfile)
    model = structure[0]
    dssp = DSSP(model, pdbfile)
    count = 0
    sec = ''
    for residue in model.get_residues():
        count = count + 1
        # print residue,count
        a_key = list(dssp.keys())[count - 1]
        sec += dssp[a_key][2]
    print sec
    return sec

这应该同时打印序列和二级结构。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43186771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档