EMBOSS и протеомы

В рамках данного практикума нужно было разобраться в принципах работы с пакетом программ EMBOSS и с помощью него получить некоторую информацию о протеомах E. coli, strain K12 и своей прокариоты (D. dadantii, strain 3937).

Получение таблицы частот встречаемости аминокислотных остатков в протеомах

Сначала с базы данных Uniprot были скачаны референсные протеомы бактерий. Командой "grep -Ec ">" proteome.fasta" было получено число белковых последовательностей в каждом протеоме. Для подсчёта и вывода общего количества аминокислот для удобства была написана отдельная программа на Python, обращающаяся к описанному ниже файлу формата .wordcount. Первый протеом (ID UP000000625) принадлежит бактерии E. coli, содержит 6352 последовательности и 1353357 аминокислот. Второй (ID UP000006859) принадлежит бактерии D. dadantii, содержит 6532 последовательности и 1412275 аминокислот.

Для получения данных о частоте аминокислот (в штуках) в каждом протеоме была использована программа wordcount пакета EMBOSS, команда терминала "wordcount -sequence "fasta::./uniprot-proteome.fasta" -wordsize 1 -outfile "./organizm.wordcount". Два полученные таким образом файла "ddadantii.wordcount" и "ecoli.wordcount" были входными данными в программму "tabla.py" на Python. Программма записала в текстовый файл "table.txt" таблицу с информацией о протеомах, готовую для вставки в html-файл (получено с помощью команды "tabla.py ddadantii.wordcount ecoli.wordcount table.txt"). Ниже приведена получившаяся таблица.

Table 1. Aminoacids in proteomes of E.coli (strain K12) and D.dadantii (strain 3937)
aa_residueshare_E.coli,%share_D.dadantii,%residual,%dev_from_average,%
L10.6811.140.462.11
A9.5110.030.522.66
G7.377.380.010.07
V7.077.010.060.43
R5.526.240.726.12
S5.86.140.342.85
I6.015.450.564.89
T5.395.370.020.19
D5.155.280.131.25
E5.765.20.565.11
Q4.444.850.414.41
P4.434.680.252.74
F3.893.730.162.1
K4.413.650.769.43
N3.943.580.364.79
Y2.842.810.030.53
M2.832.610.224.04
H2.272.350.081.73
W1.531.420.113.73
C1.161.090.073.11

Таблица содержит информацию о процентном содержании каждой аминокислоты (за исключением селеноцистеина, коего в во всем протеоме E.coli всего 3 аминокислотных остатка и которого совсем нет в протеоме D. dadantii), разницы этих процентов у двух организмов и отклонения процентного содержания в каждом протеоме от среднего между ними.

Как видно из таблицы, наблюдается общая тенденция содержания аминокислот в протеомах: наибольший процент встречаемости у аминокислот с неполярным радикалом (Leu, Ala, Gly, Val), наименьший - у специфических аминокислот, играющих особую роль (Met, Trp, His, Cys).

Самая ярко бросающаяся разница между протеомами заключается в содержании Lys в протеомах: процент его встречаемости в каждом протеоме отклоняется от среднего между ними на 9.43%. По такой большой разнице можно судить о филогенетической удаленности организмов.

Команда "compseq"

Упомянутые файлы в формате "*.wordcount" были получены с помощью команды "wordcount". В файле очень лаконично представлена информация о частоте встречаемости аминокислот (фактически - слов длины 1) в протеоме (заметим, что тем же образом получается информация о частоте встречаемости нуклеотидов в геноме): файл представляет собой таблицу, в первом столбце которого - однобуквенный код аминокислоты, а во втором - количество ее во всех последовательностях в файле. Ту же информацию можно получить, выполнив команду "compseq", однако для этой команды свойствен другой синтаксис и другой формат выходного файла.

Выходной файл

Файл "*.compseq" в целом оформлен лучше, чем файл "*.wordcount". У таблицы есть заголовки, для каждого слова (аминокислоты в нашем случае) указана наблюдаемая (Obs frequence) и ожидаемая (Exp frequence) встречаемость и их отношение. В начале файла указано, что подразумевается под ожидаемой встречаемостью, по умолчанию - все встречающиеся слова обладают одинаковой ожидаемой встречаемостью. Далее перечисляются имена некоторых последовательностей из вводного файла. После этого указываются длина слова и количество всех найденных слов (то есть в данном случае число всех аминокислот в протеоме). Заметное преимущество таблицы состоит в том, что все строки с аминокислотными остатками расположены в алфавитном порядке, так что упрощается задача анализирования нескольких протеомов, как в нашем случае. В конце файла, в последней строке таблицы, представлено количество не ожидаемых программой слов. В контексте исследования аминокислот протеома ими могут быть слова "B" и "Z", если по каким-то причинам не удалось определить аспартат/аспарагин или глутамат/глутамин.

Файл предоставляет более подробную информацию о последовательностях, упрощает ее анализ, при этом вычленять из него эту информацию для обработки программой не намного сложнее.

Синтаксис

Стандартные опции по существу те же самые, что и команды "wordcount" (входной и выходной файл, длина слова), отличия же наблюдаются в дополнительных опциях: опция -infile позволяет в качестве Exp frequence использовать частоты из ранее полученного этой же командой файла. В таком случае отношение Obs/Exp сообщает некоторую информацию об отличиях во встречаемости отдельных слов в двух файлах. Например, в нашем случае разница частот встречаемости отдельных аминокислот может быть примерно оценена таким образом. Опция -frame регулирует размер "окна", в котором за каждый шаг ищутся слова (по умолчанию размер "окна" равен 1); в нашем случае эта опция оказалась бы излишней, так как мы выбрали длину слова 1. Опция -calcfreq, изменяющая порядок определения Exp frequence, также не оказывает влияния на результаты работы программы, если длина слова 1. Интересна для нас опция -[no]ignorebz, позволяющая игнорировать/учитывать частично не определенные аминокислотные остатки "B" и "Z". Для определения частоты подпоследовательностей в цепи нуклеиновой кислоты полезна иногда опция -reverse, позволяющая производить поиск по комплементарной по отношению ко входной последовательности.

Итак, можно сделать вывод: команда "compseq" по сравнению с "wordcount" предоставляет более подробную информацию о встречаемости слов в последовательностях. Тем не менее, выбор команды в конкретном случае определяется нуждами пользователя и остается за ним.

Tabla.pyddadantii.wordcountecoli.wordcountНАЗАД