راهنمای جامع فرمت فایل‌های NGS

فرمت فایل‌های NGS یکی از مهم‌ترین مباحث در تحلیل داده‌های توالی‌یابی نسل جدید است؛ زیرا هر مرحله از پایپلاین بیوانفورماتیک، از تولید داده‌های خام تا هم‌ترازی، شناسایی واریانت‌ها، تحلیل بیان ژن، حاشیه‌نویسی ژنوم و مصورسازی نتایج، به فرمت‌های اختصاصی خود نیاز دارد. آشنایی با این فرمت‌ها نه‌تنها در انتخاب ابزارهای مناسب و اجرای صحیح تحلیل‌ها نقش کلیدی دارد، بلکه به درک بهتر جریان پردازش داده‌های ژنومی نیز کمک می‌کند. در این مقاله، مهم‌ترین فرمت فایل‌های NGS از جمله FASTQ ، BAM ، CRAM ، VCF ، BED و سایر فرمت‌های پرکاربرد را همراه با کاربرد، تفاوت‌ها و جایگاه آن‌ها در پایپلاین‌های بیوانفورماتیک به‌صورت جامع بررسی می‌کنیم.
فرمت فایل‌های NGS شامل فایل‌های دیتای خام، الاینمنت، واریانت، بیان ژن، انوتیشن و مصورسازی ژنوم

فهرست مطالب این نوشتار

معمای تنوع فایل‌ها در داده‌های NGS

فرمت فایل‌های NGS یکی از مهم‌ترین مفاهیمی است که هر متخصص ژنتیک و بیوانفورماتیک باید با آن آشنا باشد. فناوری توالی‌یابی نسل جدید (NGS) می‌تواند در مدت کوتاهی میلیون‌ها تا میلیاردها خوانش (Read) از DNA یا RNA تولید کند، اما ارزش این داده‌ها تنها زمانی آشکار می‌شود که بتوان آن‌ها را به‌درستی ذخیره، پردازش و بین نرم‌افزارهای مختلف جابه‌جا کرد. به همین دلیل، در هر مرحله از پایپلاین بیوانفورماتیک از فرمت فایل متفاوتی استفاده می‌شود که متناسب با نوع دیتا و هدف آن مرحله طراحی شده است.

تنوع فرمت‌های NGS چهار دلیل اصلی دارد: حجم بسیار زیاد داده‌ها که به روش‌های فشرده‌سازی کارآمد نیاز دارد، دسترسی سریع به اطلاعات از طریق ایندکس‌سازی (Indexing)، استانداردسازی تبادل دیتا میان ابزارهای مختلف بیوانفورماتیک و تفاوت ماهیت داده‌ها در مراحل مختلف تحلیل؛ از داده‌های خام و هم‌ترازی توالی‌ها گرفته تا شناسایی واریانت‌ها، تحلیل بیان ژن و مصورسازی نتایج.

در این مقاله، مهم‌ترین فرمت فایل‌های NGS، کاربرد هر یک، تفاوت‌های ساختاری و نقش آن‌ها در مراحل مختلف تحلیل داده‌های ژنومی را بررسی می‌کنیم تا دید روشن‌تری نسبت به جریان پردازش داده‌ها در پروژه‌های توالی‌یابی نسل جدید به دست آورید.

فرمت‌ فایل‌های NGS برای دیتای خام

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

۱. فرمت BCL یا Binary Base Call

اولین چیزی که از دستگاه‌های توالی‌یاب پرکاربردی مانند Illumina خارج می‌شود، فایل‌های BCL است. این فایل‌های باینری، در واقع حاوی اطلاعات خامِ شدت نور و سیگنال‌هایی هستند که در حین فرآیند توالی‌یابی ثبت شده‌اند.

  • نکته مهم: فایل‌های BCL به‌طور مستقیم برای آنالیزهای بیوانفورماتیکی قابل خواندن نیستند. بنابراین، اولین قدم در پایپلاین پردازش داده‌ها، استفاده از ابزارهایی (مانند bcl2fastq یا bcl-convert) برای تبدیل این فایل‌های خام و تفکیک آن‌ها (Demultiplexing) به فرمت استانداردتر یعنی FASTQ است.

۲. فرمت FASTQ

FASTQ یکی از پرکاربردترین فرمت فایل‌های NGS برای ذخیره داده‌های خام توالی‌یابی محسوب می‌شود. این فرمت متنی، علاوه بر ذخیره خودِ توالی نوکلئوتیدها، اطلاعات حیاتی دیگری به نام امتیاز کیفیت (Quality Score) را نیز در خود جای داده است.

ساختار هر توالی (Read) در فایل FASTQ همیشه از ۴ خط مجزا تشکیل می‌شود:

  1. خط اول: با کاراکتر @ شروع می‌شود و حاوی شناسه (ID) منحصربه‌فرد آن قطعه و اطلاعات دستگاه است.
  2. خط دوم: توالی خام نوکلئوتیدها (A , C , G , T و N برای بازهای ناشناخته).
  3. خط سوم: معمولاً فقط شامل کاراکتر + است (گاهی شناسه خط اول در اینجا تکرار می‌شود).
  4. خط چهارم: این خط بسیار مهم است و امتیاز کیفیت Phred را برای تک‌تک نوکلئوتیدهای خط دوم (به صورت کاراکترهای اسکی – ASCII) نشان می‌دهد. این امتیاز به نرم‌افزارها می‌گوید که دستگاه با چه میزان اطمینانی هر باز را خوانده است.

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

۳. فرمت FASTA

در میان فرمت فایل‌های NGS، فایل FASTA بیشتر برای نگهداری ژنوم‌های مرجع و توالی‌های اسمبل‌شده استفاده می‌شود. برای آشنایی بیشتر با این فرمت، توصیه می‌کنیم مقاله FASTA چیست؟ آموزش کامل مفهوم FASTA را بخوانید.

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

فرمت‌ فایل‌های NGS برای هم‌ترازی ژنوم

پس از اینکه داده‌های خام به صورت فایل FASTQ تولید شدند، قدم بعدی در پایپلاین آنالیز این است که این قطعاتِ خوانده‌شده را روی یک ژنوم مرجع نقشه‌برداری یا هم‌تراز (Align) کنیم. این مرحله دقیقاً شبیه به پیدا کردن جایگاه صحیح هزاران قطعه‌ی یک پازل روی تصویر اصلی است. هنگامی که توالی‌ها روی ژنوم مرجع مپ (Map) می‌شوند، اطلاعات مربوط به محل قرارگیریِ هر توالی و کیفیت این هم‌ترازی باید ذخیره شود.

از مهم‌ترین فرمت فایل‌های NGS برای مرحله الاینمنت، فایل‌های SAM ، BAM و CRAM هستند:

۱. فرمت SAM یا Sequence Alignment/Map

فرمت SAM یکی از پرکاربردترین فرمت فایل‌های NGS است. این فرمت درواقع یک فایل متنیِ استاندارد است که برای ذخیره‌ی جامع اطلاعات هم‌ترازی توالی‌ها استفاده می‌شود. از آنجا که این فایل متنی است، برای انسان کاملاً خوانا بوده و ساختار آن از دو بخش اصلی تشکیل شده است:

  • بخش هدر (Header Section): خطوطی که با علامت @ شروع می‌شوند. این خطوط اطلاعات پایه‌ای مانند نسخه فرمت (@HD)، نام و طول کروموزوم‌های مرجع (@SQ)، مشخصات نمونه و گروه‌های خوانش (@RG) و برنامه‌های استفاده شده برای هم‌ترازی (@PG) را نشان می‌دهند.
  • بخش داده‌ها (Alignment Records): هر خط در این بخش نشان‌دهنده یک Read است و شامل ۱۱ ستون اجباری است. این ستون‌ها به ترتیب شامل اطلاعات حیاتی از جمله نام توالی (QNAME)، کدهای عددی وضعیت مپ شدن (FLAG)، نام کروموزوم (RNAME)، موقعیت دقیق شروع مپ (POS)، کیفیت هم‌ترازی (MAPQ)، رشته‌ی کاربردی CIGAR، اطلاعات جفت‌خوانش‌ها (RNEXT , PNEXT , TLEN)، خود توالی (SEQ) و امتیاز کیفیت توالی (QUAL) می‌باشند.

نکته: در مثال بالا، ۲ خط اول هدر فایل را نشان می‌دهد. ۶ خط آخر هم یک رکورد هم‌ترازی است که رشته CIGAR برای خط آخر به صورت 9M ثبت شده؛ یعنی تمام 9 باز این توالی دقیقاً روی ژنوم مرجع مچ شده‌اند).

۲. فرمت BAM یا Binary Alignment/Map

برای حل مشکلِ حجم به شدت بالای فایل‌های متنی SAM، نسخه باینری و فشرده‌شده‌ی آن به نام BAM متولد شد. در عمل، فایل‌های SAM معمولاً با استفاده از ابزار Samtools به فرمت BAM تبدیل، مرتب (Sort) و ایندکس (Index) می‌شوند تا پردازش آن‌ها سریع‌تر و بهینه‌تر انجام شود. این فرمت دقیقاً همان اطلاعات SAM را در دل خود دارد، اما با مزایای فنی بسیار بیشتر:

  • حجم فایل‌های BAM بین ۶۰ تا ۸۰ درصد نسبت به SAM کمتر است.
  • سرعت پردازش بسیار بالاتری برای کامپیوتر یا سرور دارد.
  • اهمیت فایل‌های ایندکس (BAI): مزیت بی‌نظیر فایل‌های BAM، پشتیبانی از فایل‌های Index (با پسوند bai) است که امکان «دسترسی تصادفی» به مناطق خاصی از ژنوم را فراهم می‌کند. فایل BAI دقیقاً مثل فهرستِ یک کتاب قطور عمل می‌کند. اگر بخواهید در یک نرم‌افزار مرورگر ژنومی مختصات یک ژن خاص را بررسی کنید، نرم‌افزار به کمک این فایل نمایه مستقیماً به همان نقطه پرش می‌کند و نیازی به بارگذاری کل فایل حجیم BAM نخواهد داشت.

۳. فرمت CRAM یا Compressed Reference-oriented Alignment Map

با افزایش روزافزون تولید داده‌های ژنومی، حتی فایل‌های BAM هم فضای زیادی را در سرورها اشغال می‌کنند. اینجا بود که فرمت مدرن CRAM پا به عرصه گذاشت. این فرمت از یک استراتژی هوشمندانه به نام «فشرده‌سازی مبتنی بر مرجع» استفاده می‌کند ؛ یعنی به جای ذخیره کردنِ کاملِ توالی هر Read، تنها تفاوت‌های آن توالی را نسبت به ژنوم مرجع ذخیره می‌کند. این روش خارق‌العاده باعث می‌شود حجم فایل‌های CRAM در مقایسه با BAM (بدون از دست رفتن اطلاعات) بین ۳۰ تا ۶۰ درصد کمتر شود. این فرمت به ویژه برای پروژه‌های مقیاس‌بزرگ جمعیتی یا آرشیوهای بلندمدت ایده‌آل است.

درک تفاوت این فرمت‌ها و انتخاب هوشمندانه بین BAM و CRAM می‌تواند در پروژه‌های بیوانفورماتیک به میزان قابل‌توجهی در هزینه‌های ذخیره‌سازیِ ابری و زمان پردازش صرفه‌جویی کند.

اما پس از اینکه توالی‌ها با موفقیت روی ژنوم مرجع چیده شدند، نوبت به هدف نهایی و هیجان‌انگیزترین بخش ماجرا می‌رسد: استخراج واریانت‌ها! در بخش بعدی می‌بینیم که چگونه تفاوت‌های ژنتیکی و واریانت‌ها در قالب فرمت‌های تخصصی ثبت و نگهداری می‌شوند.

فرمت‌ فایل‌های NGS برای ذخیره واریانت‌ها

هدف نهایی بسیاری از پروژه‌های توالی‌یابی نسل جدید (به‌ویژه در تحقیقات سرطان و بیماری‌های ژنتیکی نادر)، کشف واریانت‌ها یا همان تغییرات ژنتیکی است. فرآیند پیدا کردن این تغییرات نسبت به ژنوم مرجع را «فراخوانی واریانت‌ها» (Variant Calling) می‌نامند. برای ذخیره‌سازی، اشتراک‌گذاری و تفسیر این واریانت‌ها، جامعه بیوانفورماتیک فرمت‌های بسیار هوشمندانه‌ای را توسعه داده است:

۱. فرمت VCF یا Variant Call Format

در میان فرمت فایل‌های NGS، فایل VCF (با پسوند .vcf)، رایج‌ترین و مهم‌ترین فرمت متنی برای ذخیره داده‌های مربوط به تنوع ژنتیکی (مانند SNPها، Indelها و تغییرات ساختاری) به‌شمار می‌آید. ویژگی قدرتمند VCF این است که می‌تواند اطلاعات ده‌ها یا صدها نمونه‌ی بیمار را به طور همزمان در یک فایل جای دهد.

ساختار فایل VCF سه بخش کلیدی دارد:

  • خطوط متادیتا : این خطوط با ## شروع می‌شوند و در ابتدای فایل قرار دارند. متادیتا حاوی اطلاعاتی درباره نسخه فرمت، فیلترهای اعمال‌شده، و راهنمای اختصاراتِ استفاده‌شده در فایل است.
  • خط هدر : این خط با #CHROM آغاز می‌شود و نام ستون‌های فایل را مشخص می‌کند.
  • خطوط داده‌ها : هر خط در این بخش نمایانگر یک واریانت منحصر‌به‌فرد است و حداقل ۸ ستون اجباری دارد. این ستون‌ها شامل نام کروموزوم (CHROM)، موقعیت دقیق واریانت (POS)، شناسه واریانت در دیتابیس‌ها (ID)، باز نوکلئوتیدی مرجع (REF)، باز جهش‌یافته (ALT)، امتیاز کیفیت (QUAL)، وضعیت عبور از فیلترهای کیفی (FILTER) و جزئیات تکمیلی (INFO) می‌باشند. اگر فایل حاوی اطلاعات بیماران باشد، ستون‌های مربوط به فرمت (FORMAT) و نمونه‌ها نیز به انتهای آن اضافه می‌شود.

(نکته: در خط اول داده‌ها، کروموزوم ۱ در موقعیت ۱۵۶۴۲۳ دارای واریانتی است که باز A به G تبدیل شده است. این واریانت فیلتر‌های کیفی را پاس کرده (PASS) و ژنوتیپ نمونه 0/1 یعنی هتروزیگوت است).

۲. فرمت BCF یا Binary VCF

همان‌طور که فایل SAM نسخه باینریِ خود (BAM) را داشت، فرمت متنی VCF نیز یک همتای باینری و فشرده‌شده به نام BCF دارد. فایل‌های متنی VCF در پروژه‌های بزرگِ جمعیتی می‌توانند ده‌ها گیگابایت حجم داشته باشند. تبدیل آن‌ها به BCF (با استفاده از ابزارهایی مانند bcftools) نه تنها حجم فایل را به شدت کاهش می‌دهد، بلکه به لطف قابلیت ایندکس‌سازی، سرعت جستجو و فیلتر کردن واریانت‌ها را برای کامپیوتر چندین برابر می‌کند.

۳. فرمت MAF یا Mutation Annotation Format

فرمت MAF یک فایل متنیِ جدول‌بندی‌شده (Tab-delimited) است که غالباً از پردازش و فیلتر کردن فایل‌های VCF به دست می‌آید. این فرمت که در ابتدا برای پروژه‌ی عظیم اطلس ژنوم سرطان (TCGA) توسعه یافت، به طور ویژه برای لیست کردن واریانت‌های سوماتیک (جهش‌های بافتی و سرطانی) استفاده می‌شود. تفاوت اصلی MAF با VCF در این است که MAF بسیار خواناتر بوده و تمرکز آن بر روی «اثرات بیولوژیکی» واریانت است؛ به این معنی که مستقیماً به شما می‌گوید کدام ژن آسیب دیده و چه تغییری در آمینواسیدِ پروتئین ایجاد شده است.

تشریح ستون‌های حیاتی در مثال بالا:

  • Hugo_Symbol: نام ژن آسیب‌دیده (مثل TP53 که مهم‌ترین ژن سرکوبگر تومور است).
  • Variant_Classification: نوع و اثر واریانت را نشان می‌دهد (مثلاً Missense_Mutation یعنی تغییر یک آمینواسید که روی پروتئین اثر می‌گذارد).
  • Tumor_Sample_Barcode: بارکد یا شناسه اختصاصی نمونه‌ی توموری بیمار (رایج در دیتابیس TCGA).
  • HGVSp و HGVSc: نشان‌دهنده تغییرات دقیق در سطح پروتئین و توالی کدکننده (به عنوان مثال p.G12D یعنی آمینواسید گلایسین در موقعیت ۱۲ به اسید آسپارتیک تبدیل شده است؛ یک واریانت بسیار معروف در سرطان).
  • Start_Position / Chromosome: مختصات دقیق واریانت.
  • Reference_Allele / Tumor_Seq_Allele2: باز نوکلئوتیدی مرجع در مقایسه با بازِ جهش‌یافته در تومور.

تا اینجای کار، تمام تمرکز ما روی توالی‌یابی DNA بود؛ اگر بخواهیم میزان “فعالیت و بیان ژن‌ها” (RNA) را بررسی کنیم چه؟ در بخش بعدی، وارد دنیای جذاب ترانسکریپتومیکس می‌شویم و می‌بینیم که داده‌های RNA-seq در چه قالب‌هایی ذخیره می‌گردند.

فرمت‌ فایل‌های NGS برای ذخیره میزان بیان ژن‌ها

داده‌های بیان ژن، ماهیت کاملاً متفاوتی با فایل‌های قبلی دارند؛ در اینجا به جای مختصات دقیق کروموزومی، بیشتر با “اعداد، ماتریس‌ها و شمارش” سروکار داریم.

۱. ماتریس‌های شمارش (Count Matrices)

پس از اینکه توالی‌های RNA روی ژنوم مرجع مپ شدند، نرم‌افزارهای بیوانفورماتیک می‌شمارند که از هر ژن چند رونوشت (Read) تولید شده است. این اطلاعات اولیه معمولاً در قالب فایل‌های متنی و جدول‌بندی‌شده مانند TSV یا CSV ذخیره می‌شوند. در این جداولِ ساده، سطرها نمایانگر ژن‌ها و ستون‌ها نمایانگر نمونه‌های بیمار هستند.

نمونه‌ای از ساختار یک فایل TSV برای بیان ژن:

(نکته: این اعداد خام معمولاً در مراحل بعدی آنالیز، به واحدهای نرمال‌شده‌ای مانند TPM یا FPKM تبدیل می‌شوند تا تفاوتِ عمق توالی‌یابی بین نمونه‌های مختلف برطرف شده و داده‌ها قابل مقایسه باشند).

۲. فرمت MTX یا Matrix Market

با ظهور تکنولوژی انقلابی توالی‌یابی تک‌سلولی (scRNA-seq)، محققان توانستند بیان ژن را به جای یک بافت کامل، در تک‌تک سلول‌ها بررسی کنند. نتیجه این کار، تولید ماتریس‌های غول‌پیکری است که مثلاً ۳۰,۰۰۰ ژن را در ۱۰۰,۰۰۰ سلول بررسی می‌کنند!

از آنجا که یک سلولِ منفرد فقط کسر کوچکی از ژن‌ها را در یک لحظه بیان می‌کند، بیش از ۹۰٪ این ماتریس با عدد “صفر” پر می‌شود (به این حالت ماتریس پراکنده یا Sparse Matrix می‌گویند). برای جلوگیری از هدررفتِ وحشتناکِ حافظه، از فرمت MTX استفاده می‌شود. این فرمت به جای ذخیره کل جدول، فقط مختصاتِ ژن‌هایی که بیانِ غیرِ صفر داشته‌اند را ذخیره می‌کند. فایل‌های MTX همان خروجی‌های استانداردی هستند که از نرم‌افزارهای معروفی مثل Cell Ranger (محصول شرکت 10x Genomics) دریافت می‌کنید.

filtered_feature_bc_matrix/
    ├── barcodes.tsv.gz
    ├── features.tsv.gz
    └── matrix.mtx.gz
  • فایل matrix.mtx.gz: قلب تپنده این فرمت است که مقادیر غیرصفر را به همراه مختصات سطر و ستون آن‌ها نگه می‌دارد.
  • فایل features.tsv.gz (سطرها): این فایل شامل اطلاعات ژن‌ها یا ویژگی‌هاست. ستون اول شناسه، ستون دوم نام و ستون سوم نوع ویژگی را نشان می‌دهد.
  • فایل barcodes.tsv.gz (ستون‌ها): شامل توالی بارکدهای اختصاصی هر سلول است.

یک نکته مهم درباره باز کردن این فایل‌ها: بسیاری از افراد سعی می‌کنند با استفاده از ابزارهایی مثل mat2csv این فایل‌های پراکنده را به فایل‌های متنی متراکم (Dense CSV) تبدیل کنند تا بتوانند آن‌ها را در نرم‌افزاری مثل Excel باز کنند. این کار به شدت اشتباه است! تبدیل یک مجموعه داده‌ی بزرگ به فرمت متراکم (که صفرهای ماتریس را هم در خود دارد) می‌تواند به راحتی ده‌ها گیگابایت فضا اشغال کرده و سیستم شما را از کار بیندازد. به جای این کار، بیوانفورماتیک‌دان‌ها از پکیج‌های تخصصی R (مانند Seurat) یا پایتون (مانند Scanpy و فرمت‌های پیشرفته‌تری مثل HDF5 / .h5) برای پردازش مستقیم این فایل‌های فشرده استفاده می‌کنند.

۳. فرمت‌های HDF5 و AnnData

وقتی حجم داده‌های Single-Cell به میلیون‌ها سلول می‌رسد، فایل‌های متنیِ MTX و TSV خیلی کند می‌شوند و حافظه رَم سیستم را فلج می‌کنند. در اینجا فرمت‌های باینری و پیشرفته وارد میدان می‌شوند:

فرمت HDF5 (با پسوند h5): یک فایل باینری قدرتمند که مثل یک “هارد درایوِ مجازی” عمل می‌کند. شما می‌توانید درون یک فایل HDF5، ده‌ها پوشه و ماتریس مختلف را به‌صورت فشرده ذخیره کنید و در کسری از ثانیه، بدون لود کردن کل فایل در حافظه (Lazy Loading)، فقط به بخش کوچکی از داده‌ها دسترسی پیدا کنید.

/
├── matrix/
│   ├── data
│   ├── indices
│   └── indptr
├── features/
│   ├── id
│   ├── name
│   └── feature_type
└── barcodes

همان‌طور که می‌بینید، تمام اطلاعاتِ ماتریس، ژن‌ها (Features) و سلول‌ها (Barcodes) با نظم خاصی در این ساختارِ سلسله‌مراتبی گنجانده شده‌اند که اجازه می‌دهد کامپیوتر فقط بخش مورد نیازش را در کسری از ثانیه بخواند.

فرمت AnnData (با پسوند h5ad): این فرمت که دقیقاً بر پایه ساختار HDF5 بنا شده، امروزه استاندارد طلاییِ آنالیز داده‌های تک‌سلولی در زبان پایتون (به‌ویژه کتابخانه Scanpy) است. زیباییِ AnnData در این است که ماتریس بیان ژن، متادیتای سلول‌ها، ویژگی‌های ژن‌ها و حتی نتایجِ کاهش بُعد و مصورسازی (مانند مختصات دوبعدی UMAP و PCA) را به‌صورت کاملاً یکپارچه و همگام در یک فایلِ واحد و بسیار سریع ذخیره می‌کند.

اجزای اصلی یک شیء (Object) در AnnData عبارتند از:

  • X: ماتریس اصلی داده‌ها (تعداد بیانِ ژن‌ها در تک‌تک سلول‌ها)
  • obs: متادیتای سلول‌ها (مثل نوع سلول، کلاستر، یا فاز چرخه سلولی)
  • var: متادیتای ژن‌ها (مثل نام ژن، طول ژن، یا بیوتایپ)
  • obsm و varm: حاشیه‌نویسی‌های چندبعدی (مثل مختصات نقشه UMAP یا PCA برای سلول‌ها)
  • uns: متادیتای بدون ساختار (مثل رنگ‌های نمودار یا پارامترهای الگوریتم)

پیشنهاد: بازار کار NGS در ایران و خارج از کشور | فرصت‌های شغلی و مسیر ورود

فرمت‌ فایل‌های NGS برای حاشیه‌نویسی و مختصات‌دهی ژنوم

تصور کنید نقشه‌ای در دست دارید که تمام خیابان‌ها و کوچه‌ها در آن رسم شده است، اما هیچ نام و نشانی روی آن‌ها نوشته نشده است! ژنوم انسان پس از توالی‌یابی دقیقاً چنین وضعیتی دارد.

فرمت فایل‌های NGS تنها به داده‌های توالی محدود نمی‌شوند و فایل‌های حاشیه‌نویسی (Genome Annotation) نیز بخش مهمی از این اکوسیستم را تشکیل می‌دهند. فایل‌فرمت‌های حاشیه‌نویسی فایل‌های متنیِ جدول‌بندی شده‌ای هستند که مانند یک نقشه راهنما عمل می‌کنند. این فایل‌ها به نرم‌افزارها می‌گویند که هر ژن، اگزون، اینترون یا ترانسکریپت دقیقاً روی کدام کروموزوم و در چه مختصاتی قرار گرفته است.

در دنیای بیوانفورماتیک، سه فرمت اصلی وظیفه این آدرس‌دهی را بر عهده دارند:

۱. فرمت BED

فرمت BED برای مشخص کردن نواحیِ خاصی از ژنوم استفاده می‌شود. این فایل متنی حداقل به ۳ ستون اجباری نیاز دارد: نام کروموزوم، نقطه شروع (Start) و نقطه پایان (End).

  • یک نکته بسیار مهمِ محاسباتی: برخلاف بسیاری از فرمت‌های دیگر، شمارش بازها در BED از صفر شروع می‌شود (0-based) و نقطه پایان در بازه محاسبه نمی‌شود. این فرمت سبک، بیشتر برای مشخص کردن نواحی مورد هدف در پنل‌های توالی‌یابی (Targeted Sequencing) یا یافتن قله‌ها در مطالعات اپی‌ژنتیک (Peak Calling) استفاده می‌شود.
chr1    213941196    213942363    Gene_A    1000    +
  • chr1: این ژن روی کروموزوم ۱ قرار دارد.
  • 213941196: نقطه شروع ژن روی کروموزوم.
  • 213942363: نقطه پایان ژن روی کروموزوم.
  • Gene_A: نام یا شناسه این بخش (ژن A) است.
  • 1000: امتیاز (Score) (معمولاً نشان‌دهنده میزان اطمینان یا شدت رنگ در نمایش گرافیکی است).
  • +: روی رشته مثبت (رشته مستقیم یا Forward) از DNA قرار گرفته است.

۲. فرمت‌های GTF و GFF

هنگامی که به جزئیات بسیار دقیق‌تری از ساختار ژن‌ها نیاز داریم، به سراغ فایل‌های GTF و GFF می‌رویم. هر دو فرمت GTF و GFF از ۹ ستون استاندارد تشکیل شده‌اند که با Tab از هم جدا می‌شوند و اطلاعات حیاتی شامل نام کروموزوم، منبع دیتا (مثلا Ensembl)، نوع بخش ژنی (مانند ژن یا اگزون)، مختصات دقیق شروع و پایان (مبتنی بر عدد ۱)، امتیاز اعتبار، جهت رشته DNA (+ یا -)، فریم خوانش کدون‌ها و در نهایت متاداده‌های تکمیلی را به ترتیب ذخیره می‌کنند.

فرمت GFF یا General Feature Format یک فرمت کلی‌تر است و در حال حاضر نسخه ۳ آن (GFF3) استانداردِ پایگاه‌هایی مانند NCBI و RefSeq است. این فرمت برای توصیف هر نوع ویژگیِ روی توالی (نه فقط ژن‌ها) استفاده می‌شود.

  • ساختار ستون نهم: متاداده‌ها به صورت جفت‌های Key=Value (با علامت مساوی) ذخیره می‌شوند و با علامت ; از هم جدا می‌گردند.
  • سلسله‌مراتب: برای متصل کردن اگزون‌ها به ترانسکریپت و در نهایت به ژنِ اصلی، از سیستمِ هوشمندانه‌ی شناسه و والد (ID و Parent) استفاده می‌کند.
ID=exon1;Parent=ENST00000456328;gene_id=ENSG00000223972

فرمت GTF یا Gene Transfer Format یک نسخه اصلاح‌شده و سخت‌گیرانه‌تر از GFF است که مخصوص ساختار ژن‌ها طراحی شده و فرمتِ محبوب پایگاه Ensembl است. این فرمت با ساختار مسطح (Flat) خود، استانداردِ طلاییِ پکیج‌های شمارش بیان ژن در RNA-seq (مثل HTSeq یا FeatureCounts) به شمار می‌رود.

  • ساختار ستون نهم: متاداده‌ها باید به صورت key "value" (ارزش داخل کوتیشن و با یک فاصله) نوشته شوند و بعد از هر جفت، یک سمی‌کالن قرار بگیرد.
  • فیلدهای اجباری: وجود دو فیلد gene_id و transcript_id در ستون نهمِ تمام خطوط الزامی است.
gene_id "ENSG00000223972"; transcript_id "ENST00000456328"; exon_number "1";

فایل‌های حاشیه‌نویسی، دیکشنری‌های ارزشمندی هستند که زبانِ خام نوکلئوتیدها را به مفاهیم قابل درک برای کامپیوتر ترجمه می‌کنند. بدون آن‌ها، تحلیل بیان ژن‌ها غیرممکن است. اما در کنار تمام این داده‌های متنی و محاسباتی، متخصصان بالینی نیاز دارند تا داده‌ها را با چشم خودشان ببینند!

فرمت‌ فایل‌های NGS برای مصورسازی ژنوم

برای مشاهده گرافیکی داده‌های توالی‌یابی، ابزارهای قدرتمندی به نام مرورگرهای ژنومی (Genome Browsers) مانند نرم‌افزار معروف IGV یا مرورگر تحت وب UCSC توسعه یافته‌اند. اگرچه ما می‌توانیم یک فایل BAM (فایل حاوی ریدها) را به کمک فایل ایندکسِ آن (.bai) در IGV باز کنیم، اما فایل‌های BAM به دلیل ذخیره جزئیات سنگین (مثل توالی تک‌تک ریدها و کیفیت آن‌ها) برای زوم‌اوت‌های طولانی، بررسی کل کروموزوم یا مقایسه همزمان ده‌ها نمونه، سیستم را به شدت کند می‌کنند.

برای حل این مشکل و نمایشِ روانِ نمودارهای پوشش ژنومی، فرمت‌های باینری و تخصصی زیر به وجود آمدند:

۱. فرمت‌های WIG و bedGraph

گاهی اوقات برای مقایسه ده‌ها نمونه یا بررسی کل ژنوم، ما نیازی به دیدن تک‌تکِ قطعات و ریدهای تراز‌شده موجود در فایل‌های سنگین BAM نداریم؛ بلکه فقط می‌خواهیم بدانیم در هر نقطه از ژنوم، تراکم یا عمق خوانش (Coverage) چقدر است (مثلاً برای دیدن قله‌های بیان ژن در RNA-seq یا اوج سیگنال‌ها در ChIP-seq).

فرمت‌های WIG (Wiggle) و bedGraph فایل‌های متنی ساده‌ای هستند که تمام اطلاعات اضافی ریدها را دور می‌ریزند و به هر مختصات از ژنوم، فقط یک مقدار عددی اختصاص می‌دهند تا نرم‌افزار بتواند یک نمودار میله‌ای رسم کند. اما این فایل‌ها چون متنی هستند، همچنان برای ژنوم‌های بزرگ، کند عمل می‌کنند.

chr1 1000 2000 0.5
chr1 2000 3000 1.2
chr1 3000 4000 3.8
chr1 4000 5000 2.1

فایل bedGraph دقیقاً ۴ ستون دارد: نام کروموزوم، نقطه شروع، نقطه پایان و یک ارزش عددی (Data Value) که نشان‌دهنده عمق خوانش یا شدت سیگنال در آن بازه است.

۲. فرمت BigWig

همان‌طور که فایل BAM نسخه باینری و بهینه‌شده‌ی SAM بود، فرمت BigWig نیز نسخه باینری، فشرده و ایندکس‌شده‌ی فایل‌های WIG و bedGraph است. جادوی فایل‌های BigWig در این است که به جای یک فایل BAM چند ده گیگابایتی، یک فایل بسیار سبکِ چند مگابایتی به شما می‌دهند. این فرمت به مرورگرهای ژنومی اجازه می‌دهد بدون اشغال حافظه رم، فقط داده‌های مربوط به همان بخش کوچکی از ژنوم که در حال نگاه کردن به آن هستید را بارگذاری کنند. با این کار، می‌توانید نمودار عمق خوانشِ ده‌ها بیمار را به طور همزمان و بدون هیچ‌گونه افت سرعتی در نرم‌افزار IGV اسکرول و مقایسه کنید.

۳. فرمت BigBed

دقیقاً با همان منطقِ بالا، فایل BigBed نسخه باینری و فشرده‌شده‌ی فایل‌های متنیِ BED است. اگر بخواهید جایگاه ده‌ها هزار ژن، اگزون یا ویژگی‌های گسسته (Discrete Features) را به عنوان یک «لایه راهنما» در پایین مرورگر ژنومی خود داشته باشید، استفاده از فایل متنی BED لود سیستم را کند می‌کند. اما فایل BigBed باعث می‌شود تا با زوم کردن روی هر کروموزوم، ساختار گرافیکی ژن‌ها در کسری از ثانیه برای شما رسم شود.

پیشنهاد: مسیر یادگیری آنالیز NGS؛ از پیش‌نیازها تا اجرای پروژه‌های واقعی

نتیجه‌گیری

آشنایی با فرمت فایل‌های NGS یکی از پیش‌نیازهای اساسی برای تحلیل صحیح داده‌های توالی‌یابی نسل جدید است. هر یک از این فرمت‌ها، از فایل‌های خام مانند FASTQ گرفته تا فایل‌های هم‌ترازی، واریانت، بیان ژن، حاشیه‌نویسی و مصورسازی، برای هدف مشخصی طراحی شده‌اند و در کنار یکدیگر زنجیره کامل پردازش داده‌های ژنومی را تشکیل می‌دهند.

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

سوالات متداول درباره فرمت فایل‌های NGS

کدام فرمت فایل‌های NGS بیشترین کاربرد را در بیوانفورماتیک دارد؟

اگرچه پاسخ به نوع پروژه بستگی دارد، اما فایل‌های FASTQ ، BAM و VCF سه فرمتی هستند که تقریباً در تمام پروژه‌های توالی‌یابی نسل جدید استفاده می‌شوند. FASTQ داده‌های خام، BAM نتایج هم‌ترازی و VCF واریانت‌های ژنتیکی را ذخیره می‌کند.

فایل BCL چیست و چه کاربردی دارد؟

BCL فایل خام تولیدشده توسط دستگاه‌های Illumina است که اطلاعات مربوط به بازهای خوانده‌شده و کیفیت آن‌ها را ذخیره می‌کند. این فایل‌ها معمولاً مستقیماً تحلیل نمی‌شوند و در اولین مرحله به فرمت FASTQ تبدیل می‌شوند.

فایل FASTQ چیست و چه کاربردی دارد؟

FASTQ استانداردترین فرمت فایل‌های NGS برای ذخیره داده‌های خام توالی‌یابی است. این فایل علاوه بر توالی DNA یا RNA، کیفیت هر باز را نیز ذخیره می‌کند و نقطه شروع اغلب پایپلاین‌های بیوانفورماتیک محسوب می‌شود.

فایل SAM چیست و چه کاربردی دارد؟

SAM یک فرمت متنی برای ذخیره نتایج هم‌ترازی خوانش‌ها با ژنوم مرجع است. این فایل تمام اطلاعات مربوط به موقعیت خوانش‌ها و کیفیت هم‌ترازی را نگهداری می‌کند و معمولاً با ابزار Samtools مدیریت می‌شود.

فایل BAM چیست و چه کاربردی دارد؟

BAM نسخه باینری و فشرده فایل SAM است. این فرمت فضای ذخیره‌سازی کمتری اشغال می‌کند، سرعت پردازش بالاتری دارد و رایج‌ترین فرمت برای نگهداری نتایج هم‌ترازی در پروژه‌های NGS است.

فایل VCF چیست و چه کاربردی دارد؟

VCF فرمت استاندارد ذخیره واریانت‌های ژنتیکی مانند SNP و InDel است. این فایل علاوه بر اطلاعات واریانت، داده‌هایی مانند ژنوتیپ، کیفیت فراخوانی و اطلاعات نمونه‌ها را نیز ذخیره می‌کند.

پروفایل گروه بیوانفورماتیک وانیار
تیم تولید محتوای وانیار:

تیم تولید محتوای گروه بیوانفورماتیک وانیار در تلاش است تا بهترین آموزش‌های کوتاه در زمینه بیوانفورماتیک و زیست‌شناسی را تهیه نماید. صحت محتوای این صفحه توسط کارشناسان گروه بیوانفورماتیک وانیار بررسی شده است.

جدیدترین آموزک‌های بیوانفورماتیک

عضویت در مجله وانیار

چطور از جدیدترین آموزش‌ها باخبر شوم؟

با عضویت در مجله بیوانفورماتیک وانیار، برترین آموزش‌های بیوانفورماتیک را در لحظه انتشار دریافت کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

سلام، وقت بخیر.
چطور میتونیم بهتون کمک کنیم؟
تیم ما آماده پاسخگویی به سوالات شماست.

پشتیبانی 24 ساعته در 7 روز هفته.