Биопайтон - Мотив объектов

Мотив последовательности представляет собой образец нуклеотидной или аминокислотной последовательности. Мотивы последовательностей образованы трехмерным расположением аминокислот, которые могут не быть смежными. Biopython предоставляет отдельный модуль Bio.motifs для доступа к функциям мотива последовательности, как указано ниже -

from Bio import motifs

Создание простого мотива ДНК

Давайте создадим простую последовательность мотивов ДНК, используя следующую команду -

>>> from Bio import motifs 
>>> from Bio.Seq import Seq 
>>> DNA_motif = [ Seq("AGCT"), 
...               Seq("TCGA"), 
...               Seq("AACT"), 
...             ] 
>>> seq = motifs.create(DNA_motif) 
>>> print(seq) AGCT TCGA AACT

Чтобы подсчитать значения последовательности, используйте следующую команду -

>>> print(seq.counts) 
         0       1      2       3 
A:    2.00    1.00   0.00    1.00 
C:    0.00    1.00   2.00    0.00 
G:    0.00    1.00   1.00    0.00 
T:    1.00    0.00   0.00    2.00

Используйте следующий код для подсчета «А» в последовательности -

>>> seq.counts["A", :] 
(2, 1, 0, 1)

Если вы хотите получить доступ к столбцам счетчиков, используйте команду ниже -

>>> seq.counts[:, 3] 
{'A': 1, 'C': 0, 'T': 2, 'G': 0}

Создание логотипа последовательности

Теперь мы обсудим, как создать логотип последовательности.

Рассмотрим приведенную ниже последовательность -

AGCTTACG 
ATCGTACC 
TTCCGAAT 
GGTACGTA 
AAGCTTGG

Вы можете создать свой собственный логотип, используя следующую ссылку - http://weblogo.berkeley.edu/

Добавьте указанную выше последовательность и создайте новый логотип и сохраните изображение с именем seq.png в папке biopython.

seq.png

После создания образа выполните следующую команду -

>>> seq.weblogo("seq.png")

Этот мотив последовательности ДНК представлен как логотип последовательности для LexA-связывающего мотива.

База данных JASPAR

JASPAR - одна из самых популярных баз данных. Он предоставляет возможности любого из форматов мотивов для чтения, записи и сканирования последовательностей. Он хранит метаинформацию для каждого мотива.The module Bio.motifs contains a specialized class jaspar.Motif to represent meta-information attributes.

Он имеет следующие примечательные типы атрибутов -

  • matrix_id - уникальный идентификатор мотива JASPAR
  • name - Название мотива
  • tf_family - Семейство мотивов, например, "Helix-Loop-Helix"
  • data_type - тип данных, используемых в мотиве.

Давайте создадим формат сайтов JASPAR с именем в sample.sites в папке biopython. Это определено ниже -

sample.sites
>MA0001 ARNT 1 
AACGTGatgtccta 
>MA0001 ARNT 2 
CAGGTGggatgtac 
>MA0001 ARNT 3 
TACGTAgctcatgc 
>MA0001 ARNT 4 
AACGTGacagcgct 
>MA0001 ARNT 5 
CACGTGcacgtcgt 
>MA0001 ARNT 6 
cggcctCGCGTGc

В приведенном выше файле мы создали экземпляры мотивов. Теперь давайте создадим объект-мотив из приведенных выше примеров -

>>> from Bio import motifs 
>>> with open("sample.sites") as handle: 
... data = motifs.read(handle,"sites") 
... 
>>> print(data) 
TF name None 
Matrix ID None 
Matrix:
            0       1       2       3       4       5 
A:       2.00    5.00    0.00    0.00    0.00    1.00 
C:       3.00    0.00    5.00    0.00    0.00    0.00 
G:       0.00    1.00    1.00    6.00    0.00    5.00 
T:       1.00    0.00    0.00    0.00    6.00    0.00

Здесь данные считывают все экземпляры мотива из файла sample.sites.

Чтобы распечатать все экземпляры из данных, используйте следующую команду -

>>> for instance in data.instances: 
...    print(instance) 
... 
AACGTG 
CAGGTG 
TACGTA 
AACGTG 
CACGTG 
CGCGTG

Используйте команду ниже, чтобы подсчитать все значения -

>>> print(data.counts)
            0       1       2       3       4       5 
A:       2.00    5.00    0.00    0.00    0.00    1.00 
C:       3.00    0.00    5.00    0.00    0.00    0.00 
G:       0.00    1.00    1.00    6.00    0.00    5.00 
T:       1.00    0.00    0.00    0.00    6.00    0.00
>>>