У меня есть несколько сотен структур PDB одного и того же белка, и мне нужно идентифицировать конкретный консервативный остаток во всех из них.
Первоначально я хотел извлечь последовательности из файлов PDB с помощью BioPython, выровнять их, а затем использовать это выравнивание для определения номера остатка в каждой PDB для моего сохраненного остатка.
Но оказалось, что это немного сложнее, чем я ожидал. Части последовательности часто отсутствуют в PDB. Я не вижу очевидного способа получить правильную последовательность из файлов PDB. Затем возникает проблема отображения сохраненного остаточного числа обратно в файл PDB.
Есть ли более простой способ сделать это? Это не обязательно должен быть BioPython, хотя это было бы неплохо.
Мой подход к этой проблеме заключался бы в использовании VMD (визуальной молекулярной динамики) , где вы можете загружать несколько PDB, выполнять структурное и/или выравнивание последовательностей и анализировать сохранение остатков в рамках одной программы.
VMD — это мощная программа молекулярной визуализации для отображения, анимации и анализа больших биомолекулярных систем с использованием трехмерной графики и встроенных сценариев. Это, вероятно, излишество для того, что вы хотите сделать, но я нахожу его довольно интуитивно понятным в использовании и мощным. У меня также есть потрясающая документация и множество пошаговых руководств, начиная с этого базового введения.
Что вам особенно нужно для решения вашей проблемы, так это подключаемый модуль MultiSeq 2.0 , который вы можете найти в разделе Расширения->Анализ->MultiSeq в новых версиях VMD. Это среда биоинформатики, которая позволяет вам загружать, отображать и анализировать как данные последовательности, так и данные о структуре ваших белков всего за несколько щелчков мышью. Он также имеет большой набор учебных пособий , которые помогут вам начать! Что может показаться вам интересным для сравнения многих похожих белковых структур, так это возможность создавать, просматривать и манипулировать филогенетическими деревьями .
Вот пошаговое руководство по сравнению структур и последовательностей с MultiSeq.
Здесь вы можете найти оригинальные публикации как для VMD, так и для MultiSeq:
ВМД:
Хамфри В., Далке А. и Шультен К., VMD - Visual Molecular Dynamics. , Дж. Молек. Графика, 1996 г. , 14:33-38.
Мультипоследовательность:
Робертс Э., Эргл Дж., Райт Д. и Люти-Шультен З., MultiSeq : Объединение данных о последовательности и структуре для эволюционного анализа. Биоинформатика BMC, 2006 г. , 7:382.
Неполные последовательности — распространенная проблема. Один из способов обойти это — отправить список идентификаторов PDB в средство сопоставления идентификаторов. Тот, что в Юнипроте, работает хорошо. Просто скопируйте и вставьте свои идентификационные коды PDB. Убедитесь, что вы переходите с PDB на UniprotKB (см. рисунок ниже. Надеюсь, вы сможете сопоставить большинство, если не все ваши идентификаторы.
После этого загрузите текстовый файл. Затем вы можете извлечь последовательности из этого текстового файла с помощью следующего скрипта:
from Bio import SeqIO
filenames = ["YOURINPUTFILE.txt"]
input_format = "swiss"
output_filename = "YOUROUTPUTFILE.fasta"
output = open(output_filename, "w")
for filename in filenames:
for record in SeqIO.parse(filename, input_format):
sequence = record.seq
output.write(">%s\n%s\n" % (record.id, sequence))
Затем отправьте эти последовательности в свой любимый инструмент MSA. Я ответил на вопрос о том, как сделать MSA здесь, если вы не сделали его раньше.
Незначительный и, возможно, очевидный момент, если подумать, заключается в том, что остаточный номер не будет одинаковым во всех ваших последовательностях из-за indels . Вам нужно будет переоценить эту ситуацию, когда вы туда доберетесь, если вы все еще планируете отображать законсервированные остатки в трехмерные структуры, а не в последовательность.
Вы можете использовать Ensembl ( http://www.ensembl.org/index.html ) для получения ортологов белка и выравнивания их с помощью одной из многих бесплатных веб-программ (например, ClusterOmega).
Джеймс