Задание 1
В данном задании требовалось написать скрипт для решения одной из четырех проблем. Мной была выбрана третья подзадача. В ней требуется найти частоты динуклеотидов в геноме (бактерии) и определить динуклеотид с наибольшей разницей в наблюдаемой частоте встречаемости и ожидаемой. Для нахождения частот встречаемости динуклеотидов была использована команда compseq из программного пакета EMBOSS.
Пример использования команды:
user@srv:~/$ compseq tembl:x65923 -word 2 result3.comp
В реальных последовательностях ожидаемая частота динуклеотидов неодинакова, то есть не равна 1/16.
Так, например, для нуклеотида XY
ожидаемая частота будет вычисляться по формуле:
Ожидаемая частота XY = (Наблюдаемая частота X) *
(Наблюдаемая частота Y)
Поэтому, чтобы вычислять ожидаемую частоту вышеизложенным способом, был использован флаг -calcfreq.
Пример использования скрипта:
user@srv:~/$ python dinucl usa
Также есть опция -h (помощь). Ссылка на скрипт.
Опции
- Одна обязательная опция sequence — входная последовательность в формате .fasta, для которой будут проводиться вычисления
- Необязательная опция -h (--help) — вывод сообщения с объяснением функции программы и ее опций
- Необязательная опция -v (--verbose) — отобразить в выводе программы заголовки данных
- Необязательная опция -s (--short) — отобразить только наименование динуклеотида с максимальным отклонением и его значение
Пример использования программы
user@srv:~/$ python3.6 dinucl.py test.fasta -v Dinucl. Abs. deviation Obs. frequency Exp. frequency CA 0.2176932 0.3913043 0.1736111