آموزش ریزآرایه فنوتیپ در برنامه نویسی بایوپایتون

3 سال پیش

آموزش ریزآرایه فنوتیپ در برنامه نویسی بایوپایتون

در این درس از آموزش های برنامه نویسی سایت سورس باران، ما در مورد آموزش ریزآرایه فنوتیپ در برنامه نویسی بایوپایتون بحث خواهیم کرد.

پیشنهاد ویژه : پکیج آموزش پایتون مختص بازار کار

فنوتیپ به عنوان یک کاراکتر یا صفت قابل مشاهده که توسط ارگانیسم در برابر یک ماده شیمیایی یا محیط خاص به نمایش گذاشته می شود، تعریف می شود. ریزآرایه فنوتیپ همزمان واکنش یک ارگانیسم را در برابر تعداد بیشتری از مواد شیمیایی و محیط اندازه گیری می کند و داده ها را برای درک جهش ژنی، کاراکتر های ژنی و غیره تجزیه و تحلیل می کند

بایوپایتون یک ماژول عالی، Bio.Phenotype برای تجزیه و تحلیل داده های فنوتیپی فراهم می کند. بیایید یاد بگیریم که چگونه داده های ریزآرایه فنوتیپ را  تجزیه، درون یابی، استخراج و تحلیل کنیم.

تجزیه ریزآرایه فنوتیپ

داده های ریزآرایه فنوتیپ می توانند در دو قالب CSV و JSON باشند. بایوپایتون از هر دو قالب پشتیبانی می کند. تجزیه کننده بایوپایتون داده ریزآرایه فنوتیپ را تجزیه می کند و به عنوان مجموعه ای از اشیا Pla PlateRecord برمی گردد. هر شی PlateRecord شامل مجموعه ای از اشیا Well WellRecord است. هر شی WellRecord داده ها را در قالب ۸ ردیف و ۱۲ ستون نگهداری می کند. هشت ردیف با A تا H و ۱۲ ستون با ۰۱ تا ۱۲ نشان داده می شوند. به عنوان مثال، سطر ۴ و ستون ۶ با D06 نشان داده می شوند.

اجازه دهید قالب و مفهوم تجزیه را با مثال زیر درک کنیم:

مرحله ۱ – دانلود فایل Plates.csv ارائه شده توسط تیم بایوپایتون – https://raw.githubusercontent.com/biopython/biopython/master/Doc/examples/Plates.csv

مرحله ۲ – ماژول phenotpe را به صورت زیر بار کنید:

>>> from Bio import phenotype

 

مرحله ۳ – متد phenotype.parse را فراخوانی کنید تا از فایل داده و گزینه قالب (“pm-csv”) استفاده شود. PlateRecord قابل تکرار را به صورت زیر برمی گرداند:

>>> plates = list(phenotype.parse('Plates.csv', "pm-csv")) 
>>> plates 
[PlateRecord('WellRecord['A01'], WellRecord['A02'], WellRecord['A03'], ..., WellRecord['H12']'), 
PlateRecord('WellRecord['A01'], WellRecord['A02'], WellRecord['A03'], ..., WellRecord['H12']'), 
PlateRecord('WellRecord['A01'], WellRecord['A02'], WellRecord['A03'], ..., WellRecord['H12']'), 
PlateRecord('WellRecord['A01'], WellRecord['A02'],WellRecord['A03'], ..., WellRecord['H12']')] 
>>>

 

مرحله ۴ – به صفحه اول لیست زیر به صورتی که در پایین نمایش داده شده است،  دسترسی پیدا کنید:

>>> plate = plates[0] 
>>> plate 
PlateRecord('WellRecord['A01'], WellRecord['A02'], WellRecord['A03'], ...,
WellRecord['H12']')
>>>

 

مرحله ۵ – همانطور که قبلاً بحث شد، یک صفحه شامل ۸ ردیف است که هر کدام دارای ۱۲ مورد هستند. WellRecord به دو متد قابل دسترسی است که در زیر مشخص شده است:

>>> well = plate["A04"] 
>>> well = plate[0, 4] 
>>> well WellRecord('(0.0, 0.0), (0.25, 0.0), (0.5, 0.0), (0.75, 0.0), 
   (۱٫۰, ۰٫۰), ..., (۷۱٫۷۵, ۳۸۸٫۰)')
>>>

 

مرحله ۶ – هر WellRecord دارای یک سری اندازه گیری در نقاط مختلف زمانی است و می توان با استفاده از حلقه به شرح زیر دسترسی پیدا کرد:

>>> for v1, v2 in well: 
... print(v1, v2) 
... 
۰٫۰ ۰٫۰ 
۰٫۲۵ ۰٫۰ 
۰٫۵ ۰٫۰ 
۰٫۷۵ ۰٫۰ 
۱٫۰ ۰٫۰ 
... 
۷۱٫۲۵ ۳۸۸٫۰ 
۷۱٫۵ ۳۸۸٫۰ 
۷۱٫۷۵ ۳۸۸٫۰
>>>

 

درون یابی

درون یابی بینش و اطلاعات بیشتری به داده ها می دهد. بایوپایتون روش هایی را برای استفاده از داده های WellRecord برای به دست آوردن اطلاعات برای زمان های میانی ارائه می دهد. نحو مشابه فهرست بندی فهرست است و بنابراین یادگیری آن آسان است.

برای بدست آوردن داده ها در ساعت ۲۰٫۱ ، کافی است مقادیر شاخص را در زیر مشخص کنید:

>>> well[20.10] 
۶۹٫۴۰۰۰۰۰۰۰۰۰۰۰۰۳
>>>

 

ما می توانیم از نقطه زمان شروع و زمان پایان و همچنین در زیر مشخص کنیم:

>>> well[20:30] 
[۶۷٫۰, ۸۴٫۰, ۱۰۲٫۰, ۱۱۹٫۰, ۱۳۵٫۰, ۱۴۷٫۰, ۱۵۸٫۰, ۱۶۸٫۰, ۱۷۹٫۰, ۱۸۶٫۰]
>>>

 

دستور فوق داده ها را از ۲۰ ساعت تا ۳۰ ساعت با فاصله ۱ ساعت درون یابی می کند. به طور پیش فرض، این فاصله ۱ ساعت است و می توانیم آن را به هر مقداری تغییر دهیم. به عنوان مثال  اجازه دهید ۱۵ دقیقه (۰٫۲۵ ساعت) فاصله را به شرح زیر ارائه دهیم:

>>> well[20:21:0.25] 
[۶۷٫۰, ۷۳٫۰, ۷۵٫۰, ۸۱٫۰]
>>>

 

تجزیه و تحلیل و استخراج

بایوپایتون یک متد مناسب برای تجزیه و تحلیل داده های WellRecord با استفاده از توابع سیگموئید Gompertz ،Logistic و Richards فراهم می کند. به طور پیش فرض، متد fit از تابع Gompertz استفاده می کند. برای انجام وظیفه باید متد fit شی object WellRecord را فراخوانی کنیم. که به شرح زیر است:

>>> well.fit() 
Traceback (most recent call last): 
... 
Bio.MissingPythonDependencyError: Install scipy to extract curve parameters. 
>>> well.model 
>>> getattr(well, 'min') 0.0 
>>> getattr(well, 'max') 388.0 
>>> getattr(well, 'average_height') 
۲۰۵٫۴۲۷۰۸۳۳۳۳۳۳۳۳۴
>>>

 

بایوپایتون برای انجام تجزیه و تحلیل پیشرفته به ماژول Scipy نیاز دارد. این جزئیات حداقل، حداکثر و متوسط_ارتفاع را بدون استفاده از ماژول scipy محاسبه می کند.

 

منبع.

لیست جلسات قبل آموزش برنامه نویسی بایوپایتون

  1. آموزش برنامه نویسی بایوپایتون (Biopython)
  2. معرفی برنامه نویسی بایوپایتون
  3. آموزش نصب بایوپایتون
  4. ایجاد یک برنامه ساده در برنامه نویسی بایوپایتون
  5. آموزش دنباله در برنامه نویسی بایوپایتون
  6. عملیات توالی پیشرفته در برنامه نویسی بایوپایتون
  7. آموزش توالی ورودی/خروجی در برنامه نویسی بایوپایتون
  8.  آموزش هم‌ترازسازی توالی در برنامه نویسی بایوپایتون
  9. بررسی اجمالی BLAST در برنامه نویسی بایوپایتون
  10. بررسی پایگاه داده Entrez در برنامه نویسی بایوپایتون
  11. آموزش ماژول PDB در برنامه نویسی بایوپایتون
  12. آموزش اشیا موتیف در برنامه نویسی بایوپایتون
  13. آموزش ماژول BioSQL در برنامه نویسی بایوپایتون
  14. آموزش ژنتیک جمعیت در برنامه نویسی بایوپایتون
  15. آموزش آنالیز ژنوم در برنامه نویسی بایوپایتون
0
برچسب ها :
نویسنده مطلب erfan molaei

دیدگاه شما

بدون دیدگاه