ایجاد یک برنامه ساده در برنامه نویسی بایوپایتون
ایجاد یک برنامه ساده در برنامه نویسی بایوپایتون
در این درس از آموزش های برنامه نویسی سایت سورس باران، با آموزش ایجاد یک برنامه ساده در برنامه نویسی بایوپایتون در خدمت شما هستیم.
پیشنهاد ویژه : آموزش طراحی وب سایت با پایتون
اجازه دهید ایجاد یک برنامه ساده در برنامه نویسی بایوپایتون برای تجزیه یک فایل بیوانفورماتیک و چاپ محتوا ایجاد کنیم. این به ما کمک می کند تا مفهوم کلی بایوپایتون و چگونگی کمک به آن را در زمینه بیوانفورماتیک درک کنیم.
مرحله 1 – ابتدا ، یک نمونه فایل توالی، “example.fasta” ایجاد کنید و محتوای زیر را در آن قرار دهید
1 2 3 4 5 6 7 8 9 |
>sp|P25730|FMS1_ECOLI CS1 fimbrial subunit A precursor (CS1 pilin) MKLKKTIGAMALATLFATMGASAVEKTISVTASVDPTVDLLQSDGSALPNSVALTYSPAV NNFEAHTINTVVHTNDSDKGVVVKLSADPVLSNVLNPTLQIPVSVNFAGKPLSTTGITID SNDLNFASSGVNKVSSTQKLSIHADATRVTGGALTAGQYQGLVSIILTKSTTTTTTTKGT >sp|P15488|FMS3_ECOLI CS3 fimbrial subunit A precursor (CS3 pilin) MLKIKYLLIGLSLSAMSSYSLAAAGPTLTKELALNVLSPAALDATWAPQDNLTLSNTGVS NTLVGVLTLSNTSIDTVSIASTNVSDTSKNGTVTFAHETNNSASFATTISTDNANITLDK NAGNTIVKTTNGSQLPTNLPLKFITTEGNEHLVSGNYRANITITSTIKGGGTKKGTTDKK |
پسوند fasta به قالب فایل توالی اشاره دارد. FASTA از نرم افزار بیوانفورماتیک FASTA نشات گرفته است. قالب FASTA دارای چندین توالی است که یک به یک مرتب شده اند و هر دنباله شناسه، نام ، توضیحات و داده های توالی واقعی خود را دارد.
مرحله 2 – یک اسکریپت پایتون جدید ایجاد کنید، * simple_example.py “و کد زیر را وارد کنید و آن را ذخیره کنید.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
from Bio.SeqIO import parse from Bio.SeqRecord import SeqRecord from Bio.Seq import Seq file = open("example.fasta") records = parse(file, "fasta") for record in records: print("Id: %s" % record.id) print("Name: %s" % record.name) print("Description: %s" % record.description) print("Annotations: %s" % record.annotations) print("Sequence Data: %s" % record.seq) print("Sequence Alphabet: %s" % record.seq.alphabet) |
اجازه دهید کمی بیشتر کد را بررسی کنیم.
خط 1- کلاس تجزیه موجود در ماژول Bio.SeqIO را وارد می کند. ماژول Bio.SeqIO برای خواندن و نوشتن فایل توالی در قالب های مختلف و کلاس “تجزیه” (`parse’) برای تجزیه محتوای فایل توالی استفاده می شود.
خط 2- کلاس SeqRecord موجود در ماژول Bio.SeqRecord را وارد می کند. این ماژول برای دستکاری سوابق توالی و کلاس SeqRecord برای نشان دادن یک توالی خاص موجود در فایل توالی استفاده می شود.
* خط 3- کلاس Seq موجود در ماژول Bio.Seq را وارد می کند. این ماژول برای دستکاری داده های توالی و کلاس Seq برای نشان دادن داده های توالی یک رکورد توالی خاص موجود در پرونده توالی استفاده می شود.
خط 5 – با استفاده از تابع منظم پایتون، پرونده “example.fasta” را باز می کند.
خط 7 – محتوای فایل توالی را تجزیه می کند و محتوا را به عنوان لیست شی SeqRecord برمی گرداند.
خط 9-15 با استفاده از python for loop بر روی سوابق حلقه می زند و ویژگی های رکورد توالی (SqlRecord) مانند شناسه، نام، توضیحات، داده های توالی و غیره را چاپ می کند.
خط 15- نوع توالی را با استفاده از کلاس Alphabet چاپ می کند.
مرحله 3 – یک خط فرمان باز کنید و به پوشه حاوی فایل توالی، “example.fasta” بروید و دستور زیر را اجرا کنید –
1 |
> python simple_example.py |
مرحله 4 – پایتون اسکریپت را اجرا می کند و تمام داده های توالی موجود در فایل نمونه را چاپ می کند، “example.fasta”. خروجی مشابه محتوای زیر خواهد بود.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
Id: sp|P25730|FMS1_ECOLI Name: sp|P25730|FMS1_ECOLI Decription: sp|P25730|FMS1_ECOLI CS1 fimbrial subunit A precursor (CS1 pilin) Annotations: {} Sequence Data: MKLKKTIGAMALATLFATMGASAVEKTISVTASVDPTVDLLQSDGSALPNSVALTYSPAVNNFEAHTINTVVHTNDSD KGVVVKLSADPVLSNVLNPTLQIPVSVNFAGKPLSTTGITIDSNDLNFASSGVNKVSSTQKLSIHADATRVTGGALTA GQYQGLVSIILTKSTTTTTTTKGT Sequence Alphabet: SingleLetterAlphabet() Id: sp|P15488|FMS3_ECOLI Name: sp|P15488|FMS3_ECOLI Decription: sp|P15488|FMS3_ECOLI CS3 fimbrial subunit A precursor (CS3 pilin) Annotations: {} Sequence Data: MLKIKYLLIGLSLSAMSSYSLAAAGPTLTKELALNVLSPAALDATWAPQDNLTLSNTGVSNTLVGVLTLSNTSIDTVS IASTNVSDTSKNGTVTFAHETNNSASFATTISTDNANITLDKNAGNTIVKTTNGSQLPTNLPLKFITTEGNEHLVSGN YRANITITSTIKGGGTKKGTTDKK Sequence Alphabet: SingleLetterAlphabet() |
ما در این مثال سه کلاس parse ، SeqRecord و Seq را دیده ایم. این سه کلاس بیشتر قابلیت ها را ارائه می دهند و ما در بخش های بعدی این کلاس ها را یاد خواهیم گرفت.
دیدگاه شما