我们的基因体时代-AI, Data和生物资讯 Day14- 第二代定序(次世代定序)和它的资料格式

上一篇我们的基因体时代-AI, Data和生物资讯 Day13- 最基本的生物资讯资料格式Fasta 昨天稍微调整步伐,怕原本规划的第一部份谈论太久,所以开始进到当初规划的路线,上一篇就从生物资讯里面最基础的资料格式Fasta开始分享,这个资料格式可以用来储存DNA序列或是氨基酸序列,且里面可以编码从什麽资料库而来。

fastq格式的出现

那这类的fasta格式在一代定序时代是非常足够使用的,但直到人类基因体计画的关系,开始发展能一次定序许多片段的技术,俗成的第二代定序,这时候便开始须要扩增原本的资料格式已便能纳进去新技术的资讯,这个格式的名称叫做fastq,原本其实算是科学家自己用来做纪录的一种格式,并没有正式的公开,据说一开始是由Wellcome Trust Sanger Institute的生物学家Jim Mullikin所开始使用的,後来在2004年,由次世代定序公司Solexa所发表,後来这间公司被现在市场最大份额的次世代定序公司Illumina所并购,慢慢的这个格式开始普及。

主流的次世代定序原理

次世代定序的重点在於一次定序能定序几百万个基因片段,每个片段介於150上下,但其中的方法学可以有很多种变形,目前市占率最高的是illumina这间公司的次世代定序平台,他定序的流程大概如下图所示:
https://ithelp.ithome.com.tw/upload/images/20210914/20103989oH0UXn9XAH.png
简化来说,他可以在一个晶片上同时定序数百万的片段,方法是将经过处理之待定序的片段,黏到晶片上面,会先将这个待定序片段在原地复制成一丛後,进一步利用萤光分子标定的方式,开始定序的时候,其实就是将萤光标定的硷基材料方进去,它一复制就会放出他对订的萤光,同时用高速照相机捕捉,在转换成定序资料,这些序列资料除了当下这个位置的序列外,还会有一个品质数值,就是这个位置萤光的纯度,比如这个晶片位置上的点100%都是红光,那代表这个位置的可信度高,要是这个位置四种萤光都有侦测到,那麽就是不太可信,因此这类的定序方式每个定序资料都有相对应的品质数值。

fastq格式的规范

下面便是一个示范的fastq一笔资料的样子

@SEQ_ID
GATTTGGGGTTCAAAGCAGTATCGATCAAATAGTAAATCCATTTGTTCAACTCACAGTTT
+
!''*((((***+))%%%++)(%%%%).1***-+*''))**55CCF>>>>>>CCCCCCC65

在fastq中一笔资料基本上有四行组成:

  • 第一行以@开头,会有这个序列的一些基本资讯,比如机台、晶片位置、barcode等等资讯
  • 第二行为实际的DNA序列
  • 第三行纯粹一个+符号分隔第二和第四行
  • 第四行则是对应第二行每个核酸相对於的定序品质资讯

fastq的资料处理

从fastq开始,便进入了需要各式各样软件和算法的世界,这边就可以分成在三个环境中所使用的工具,分别是在linux环境、R及python,这也是基本进入生物资讯领域需要会的技能点数。通常fastq的档案是当检体中核酸送进去次世代定序机台後,出来的原始资料,也可以把它当作是:将生物密码数位化的第一个媒介(好像有点太狗血的形容XD)

在Linux环境中

fastqc

大部分生物资讯牵涉到次世代定序资料的处理,很多都是Linux环境中的软件,基本上,老牌软件FastQC是大家入门都会使用到的软件,他可以输出一份关於这个fastq档案的品质分析资料,如下面的资讯:
https://ithelp.ithome.com.tw/upload/images/20210914/20103989aaRfmegHTN.png
会显示出每个定序资料长度排在一起,每一个位置其平均的品质条件如何的资讯,根据这个资讯可以用来判断是否要来做筛选或是剔除前或是後一些品质比较差的序列。
安装後,直接在命令行执行下面的参数就可以,它会自动侦测你指定的资料夹中的fastq档案,并且做分析。

fastqc seqfile1 seqfile2 .... seqfileN -o outputfile

fastp

再来当我们想要去筛选或是清理这些定序出来的资料,把特定序列清除、不好品质的序列删掉,那麽就可以使用fastp款软件,以前的话,可能要用多个软件,比如fastqc+trimmomatic,但现在fastp一个就可以完成,且速度也蛮快的,另外,它输出的报告也颇美观.

除此之外,seqtkseqkit也都是Linux环境下可用的工具。

在R环境中

Bioconductor是R里面一个针对生物资讯所创立的大Project,里面有几乎所有你需要用到做生物资讯分析的library,在针对fastq档案的处理上,可以使用ShortRead, Biostrings, qrqc来处理

在Python环境中

在python中则有Biophython可以来处理。

Chen S, Zhou Y, Chen Y, Gu J. fastp: an ultra-fast all-in-one FASTQ preprocessor. Bioinformatics. 2018 Sep 1;34(17):i884-i890. doi: 10.1093/bioinformatics/bty560. PMID: 30423086; PMCID: PMC6129281.

Philip Ewels, Måns Magnusson, Sverker Lundin, Max Käller, MultiQC: summarize analysis results for multiple tools and samples in a single report, Bioinformatics, Volume 32, Issue 19, 1 October 2016, Pages 3047–3048, https://doi.org/10.1093/bioinformatics/btw354

Metzker, M. L. (2009). Sequencing technologies — the next generation. Nature Reviews Genetics, 11(1), 31–46. doi:10.1038/nrg2626

Cock PJ, Fields CJ, Goto N, Heuer ML, Rice PM. The Sanger FASTQ file format for sequences with quality scores, and the Solexa/Illumina FASTQ variants. Nucleic Acids Res. 2010;38(6):1767-1771. doi:10.1093/nar/gkp1137

Goodwin, S., McPherson, J. & McCombie, W. Coming of age: ten years of next-generation sequencing technologies. Nat Rev Genet 17, 333–351 (2016). https://doi.org/10.1038/nrg.2016.49

Logsdon, G.A., Vollger, M.R. & Eichler, E.E. Long-read human genome sequencing and its applications. Nat Rev Genet 21, 597–614 (2020). https://doi.org/10.1038/s41576-020-0236-x

https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0163962

这个月的规划贴在这篇文章中我们的基因体时代-AI, Data和生物资讯 Overview,也会持续调整!我们的基因体时代是我经营的部落格,如有对於生物资讯、检验医学、资料视觉化、R语言有兴趣的话,可以来交流交流!


<<:  第九天:建立练习专案

>>:  方法论(Know how):隐藏在程序书背後的系统逻辑与资讯汇整方法

每个人都该学的30个Python技巧|技巧 30:档案操作(字幕、衬乐、练习)

今天!就是今天!!这个系列终於要完结啦~(撒花)(狂撒) 最後一个要教的技巧就是关於档案操作,如果想...

30-9 之Presentation Layer - MVP ( Model-View-Presenter )

接下来我们来谈谈 MVP ( Model-View-Presenter ),在知道 MVC 也只是在...

Day23:今天来聊一下Hacking Web Applications

Web application hacking是透过application的图形web介面操纵应用程...

Day41 ( 游戏设计 ) 翻翻卡 ( 卡牌记忆 )

翻翻卡 ( 卡牌记忆 ) 教学原文参考:翻翻卡 ( 卡牌记忆 ) 这篇文章会介绍,如何在 Scrat...