آموزش اشیا موتیف در برنامه نویسی بایوپایتون
آموزش اشیا موتیف در برنامه نویسی بایوپایتون
در این درس از آموزش های برنامه نویسی سایت سورس باران، ما در مورد آموزش اشیا موتیف در برنامه نویسی بایوپایتون بحث خواهیم کرد.
پیشنهاد ویژه : پکیج آموزش صفر تا صد پایتون
توالی یا دنباله موتیف یک الگوی توالی نوکلئوتیدی یا اسید آمینه است. دنباله موتیف با آرایش سه بعدی اسیدهای آمینه که ممکن است مجاور نباشند، تشکیل می شوند. بایوپایتون یک ماژول جداگانه را ارائه می دهد، Bio.motifs برای دسترسی به ویژگی های نقش توالی به شرح زیر است:
1 |
from Bio import motifs |
ایجاد نقش ساده DNA
بیایید یک توالی موتیف ساده DNA با استفاده از دستور زیر ایجاد کنیم –
1 2 3 4 5 6 7 8 |
>>> 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 |
برای شمارش مقادیر توالی، از دستور زیر استفاده کنید –
1 2 3 4 5 6 |
>>> 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 |
برای شمارش ‘A’ در توالی، از کد زیر استفاده کنید:
1 2 |
>>> seq.counts["A", :] (2, 1, 0, 1) |
اگر می خواهید به ستون های شمارش دسترسی پیدا کنید، از دستور زیر استفاده کنید –
1 2 |
>>> seq.counts[:, 3] {'A': 1, 'C': 0, 'T': 2, 'G': 0} |
ایجاد یک لوگو توالی
اکنون ما در مورد چگونگی ایجاد یک لوگو توالی بحث خواهیم کرد.
توالی زیر را در نظر بگیرید:
1 2 3 4 5 |
AGCTTACG ATCGTACC TTCCGAAT GGTACGTA AAGCTTGG |
با استفاده از لینک زیر می توانید لوگو خود را ایجاد کنید – http://weblogo.berkeley.edu/
توالی بالا را اضافه کنید و یک لوگوجدید ایجاد کنید و تصویری با نام seq.png را در پوشه biopython ذخیره کنید.
1 |
seq.png |
پس از ایجاد تصویر، اکنون دستور زیر را اجرا کنید:
1 |
>>> seq.weblogo ("seq.png") |
این موتیف توالی DNA به عنوان یک لوگو توالی برای موتیف LexA-binding نشان داده شده است.
بانک اطلاعات JASPAR
JASPAR یکی از محبوب ترین پایگاه های اطلاعاتی است. این امکانات از هر یک از قالب های موتیف برای خواندن، نوشتن و اسکن توالی را فراهم می کند. این اطلاعات متا را برای هر نقش ذخیره می کند. ماژول Bio.motifs شامل کلاس تخصصی jaspar.Motif برای نمایش ویژگیهای متا اطلاعات است.
این دارای انواع ویژگی های قابل توجه زیر است:
- matrix_id – شناسه منحصر به فرد JASPAR
- name – نام موتیف
- tf_family – خانواده موتیف، به عنوان مثال ’Helix-Loop-Helix’
- data_type – نوع داده ای که در موتیف استفاده می شود.
بیایید یک قالب سایت های JASPAR ایجاد کنیم که در نمونه. site در پوشه biopython نامگذاری شده است. در زیر تعریف شده است:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
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 |
در فایل فوق، نمونه های موتیفی ایجاد کرده ایم. حال اجازه دهید از موارد فوق یک شی موتیف ایجاد کنیم:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
>>> 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 می خوانند.
برای چاپ همه موارد از داده ها، از دستور زیر استفاده کنید:
1 2 3 4 5 6 7 8 9 |
>>> for instance in data.instances: ... print(instance) ... AACGTG CAGGTG TACGTA AACGTG CACGTG CGCGTG |
از دستور زیر برای شمارش همه مقادیر استفاده کنید
1 2 3 4 5 6 7 |
>>> 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 >>> |
لیست جلسات قبل آموزش برنامه نویسی بایوپایتون
- آموزش برنامه نویسی بایوپایتون (Biopython)
- معرفی برنامه نویسی بایوپایتون
- آموزش نصب بایوپایتون
- ایجاد یک برنامه ساده در برنامه نویسی بایوپایتون
- آموزش دنباله در برنامه نویسی بایوپایتون
- عملیات توالی پیشرفته در برنامه نویسی بایوپایتون
- آموزش توالی ورودی/خروجی در برنامه نویسی بایوپایتون
- آموزش همترازسازی توالی در برنامه نویسی بایوپایتون
- بررسی اجمالی BLAST در برنامه نویسی بایوپایتون
- بررسی پایگاه داده Entrez در برنامه نویسی بایوپایتون
- آموزش ماژول PDB در برنامه نویسی بایوپایتون
دیدگاه شما