Biopython - objetos de motivo

Um motivo de sequência é um padrão de sequência de nucleotídeos ou aminoácidos. Os motivos da sequência são formados por arranjos tridimensionais de aminoácidos que podem não ser adjacentes. Biopython fornece um módulo separado, Bio.motifs para acessar as funcionalidades do motivo de sequência conforme especificado abaixo -

from Bio import motifs

Criando um motivo simples de DNA

Vamos criar uma sequência simples de motivos de DNA usando o comando abaixo -

>>> 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

Para contar os valores da sequência, use o comando abaixo -

>>> 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

Use o seguinte código para contar 'A' na sequência -

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

Se você deseja acessar as colunas de contagens, use o comando abaixo -

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

Criação de um logotipo de sequência

Vamos agora discutir como criar um logotipo de sequência.

Considere a sequência abaixo -

AGCTTACG 
ATCGTACC 
TTCCGAAT 
GGTACGTA 
AAGCTTGG

Você pode criar seu próprio logotipo usando o seguinte link - http://weblogo.berkeley.edu/

Adicione a sequência acima e crie um novo logotipo e salve a imagem chamada seq.png em sua pasta biopython.

seq.png

Depois de criar a imagem, execute o seguinte comando -

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

Este motivo de sequência de DNA é representado como um logotipo de sequência para o motivo de ligação a LexA.

Banco de dados JASPAR

JASPAR é um dos bancos de dados mais populares. Ele fornece recursos de qualquer um dos formatos de motivo para ler, escrever e escanear sequências. Ele armazena meta-informação para cada motivo.The module Bio.motifs contains a specialized class jaspar.Motif to represent meta-information attributes.

Possui os seguintes tipos de atributos notáveis ​​-

  • matrix_id - ID exclusivo do motivo JASPAR
  • nome - o nome do motivo
  • tf_family - A família do motivo, por exemplo, 'Helix-Loop-Helix'
  • data_type - o tipo de dados usados ​​no motivo.

Vamos criar um formato de sites JASPAR nomeado em sample.sites na pasta biopython. É definido abaixo -

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

No arquivo acima, criamos instâncias de motivos. Agora, vamos criar um objeto motivo a partir das instâncias acima -

>>> 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

Aqui, os dados lêem todas as instâncias do motivo do arquivo sample.sites.

Para imprimir todas as instâncias de dados, use o comando abaixo -

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

Use o comando abaixo para contar todos os valores -

>>> 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
>>>