Biopython - Motif Nesneleri

Bir dizi motifi, bir nükleotid veya amino asit sekans modelidir. Sekans motifleri, bitişik olmayabilen amino asitlerin üç boyutlu düzenlenmesiyle oluşturulur. Biopython, aşağıda belirtilen sekans motifinin işlevlerine erişmek için ayrı bir modül olan Bio.motifs sağlar -

from Bio import motifs

Basit DNA Motifi Oluşturmak

Aşağıdaki komutu kullanarak basit bir DNA motif dizisi oluşturalım -

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

Sıra değerlerini saymak için aşağıdaki komutu kullanın -

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

Sıradaki 'A'yı saymak için aşağıdaki kodu kullanın -

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

Sayım sütunlarına erişmek istiyorsanız, aşağıdaki komutu kullanın -

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

Sekans Logosu Oluşturma

Şimdi Sıra Logosunun nasıl oluşturulacağını tartışacağız.

Aşağıdaki sırayı düşünün -

AGCTTACG 
ATCGTACC 
TTCCGAAT 
GGTACGTA 
AAGCTTGG

Aşağıdaki bağlantıyı kullanarak kendi logonuzu oluşturabilirsiniz - http://weblogo.berkeley.edu/

Yukarıdaki diziyi ekleyin ve yeni bir logo oluşturun ve seq.png adlı resmi biopython klasörünüze kaydedin.

seq.png

Görüntüyü oluşturduktan sonra, şimdi aşağıdaki komutu çalıştırın -

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

Bu DNA dizisi motifi, LexA bağlama motifi için bir sekans logosu olarak temsil edilir.

JASPAR Veritabanı

JASPAR, en popüler veri tabanlarından biridir. Dizileri okumak, yazmak ve taramak için herhangi bir motif formatının kolaylığını sağlar. Her motif için meta bilgileri depolar.The module Bio.motifs contains a specialized class jaspar.Motif to represent meta-information attributes.

Aşağıdaki dikkate değer nitelik türlerine sahiptir -

  • matrix_id - Benzersiz JASPAR motif kimliği
  • isim - Motifin adı
  • tf_family - Motif ailesi, örneğin 'Helix-Loop-Helix'
  • veri_türü - motifte kullanılan veri türü.

Biopython klasöründe sample.sites adında bir JASPAR site formatı oluşturalım. Aşağıda tanımlanmıştır -

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

Yukarıdaki dosyada motif örnekleri oluşturduk. Şimdi yukarıdaki örneklerden bir motif nesnesi oluşturalım -

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

Burada veriler, sample.sites dosyasındaki tüm motif örneklerini okur.

Verilerden tüm örnekleri yazdırmak için aşağıdaki komutu kullanın -

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

Tüm değerleri saymak için aşağıdaki komutu kullanın -

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