FastQ格式
概念 说明 例子说明FastA格式 概念 格式说明 例子说明FAQ 测序深度和FastQ文件大小的关系
概念
FastQ格式是序列格式中常见的一种,它存储了生物序列以及相应的质量评价,其序列以及质量信息都是使用一个ASCII字符标示,最初由Sanger开发,目的是将FASTA序列与质量数据放到一起,目前已经成为高通量测序结果的事实标准。
格式说明
FASTQ文件中每个序列通常有四行:
1.第一行:必须以“@”开头,后面跟着唯一的序列ID标识符,然后跟着可选的序列描述内容,标识符与描述内容用空格分开;
2.第二行:序列字符(核酸为[AGCTN]+,蛋白为氨基酸字符);
3.第三行:必须以“+”开头,后面跟着可选的ID标识符和可选的描述内容,如果“+”后面有内容,该内容必须与第一行“@”后的内容相同;
4.第四行:碱基质量字符,每个字符对应第二行相应位置碱基或氨基酸的质量,该字符可以按一定规则转换为碱基质量得分,碱基质量得分可以反映该碱基的错误率。这一行的字符数与第二行中的字符数必须相同。
对于每个碱基的质量编码标示,不同的软件采用不同的方案,目前有5种方案:
其中P代表该碱基被测序错误的概率,如果该碱基测序出错的概率为0.001,则Q应该为30,那么30+33=63,那么63对应的ASCii码为“?”,则在第四行中该碱基对应的质量代表值即为“?”一般地,碱基质量从0-40,既ASCii码为从 “!”(0+33)到“I”(40+33)。以上是sanger中心采用记录read测序质量的方法,Illumina起初没有完全依照sanger中心的方法来定义测序质量,而是把P换成了p/(1-p). 其他完全按照sanger的定义来做。但是他这形式在某些情况下是不准确的,可以看出当测序质量很高的情况下两种形式几乎没区别,但低质量的碱基则有区别了。
对于每个碱基的质量编码标示,不同的软件采用不同的方案,目前有5种方案:
Sanger,Phred quality score,值的范围从0到92,对应的ASCII码从33到126,但是对于测序数据(raw read data)质量得分通常小于60,序列拼接或者mapping可能用到更大的分数。
Solexa/Illumina 1.0, Solexa/Illumina quality score,值的范围从-5到63,对应的ASCII码从59到126,对于测序数据,得分一般在-5到40之间;
Illumina 1.3+,Phred quality score,值的范围从0到62对应的ASCII码从64到126,低于测序数据,得分在0到40之间;
Illumina 1.5+,Phred quality score,但是0到2作为另外的标示,详见http://solexaqa.sourceforge.net/questions.htm#illumina
Illumina 1.8+
不同版本质量得分与质量字符ASCII值的关系
FastA格式
概念
在生物信息学中,FASTA格式(又称为Pearson格式),是一种基于文本用于表示核苷酸序列或氨基酸序列的格式。在这种格式中碱基对或氨基酸用单个字母来编码,且允许在序列前添加序列名及注释。序列文件的第一行是由大于号">"或分号";"打头的任意文字说明(习惯常用">"作为起始),用于序列标记。从第二行开始为序列本身,只允许使用既定的核苷酸或氨基酸编码符号。通常核苷酸符号大小写均可,而氨基酸常用大写字母。
格式说明
Fasta格式首先以大于号“>”开头,接着是序列的标识符,然后是序列的描述信息。换行后是序列信息,序列中允许空格,换行,空行,直到下一个大于号,表示该序列的结束。所有来源于NCBI的序列都有一个gi号“gi|gi_identifier”,gi号类似与数据库中的流水号,由数字组成,具有绝对唯一性。一条核酸或者蛋白质改变了,将赋予一个新的gi号(这时序列的接收号可能不变)。gi号后面是序列的标识符,标识符由序列来源标识、序列标识(如接收号、名称等)等几部分组成,他们之间用“|”隔开,如果某项缺失,可以留空但是“|”不能省略。
例子说明
>gi|187608668|ref|NM001043364.2| Bombyx mori moricin (Mor), mRNAAAACCGCGCAGTTATTTAAAATATGAATATTTTAAAACTTTTTGTGGCAATGTCTCTGGTGTCATGTAGTACAGCCGCTCC
大于号“>”开头,来源于NCBI的序列都有一个gi号“gi|gi_identifier”,gi号后面是序列的标识符,标识符由序列来源标识、序列标识(如接收号、名称等)等几部分组成,“ref|NM001043364.2|”表示序列来源于NCBI的参考序列库,接收号为“NM_001043364.2”。
测序深度和FastQ文件大小的关系
1.测序深度:指参考序列一个碱基上比对的reads数目,计算公式为
测序深度 = reads长度 × 比对的reads数目 / 参考序列长度
以人类为例,全基因组大小约为3Gbp,3,234.83 Mb (Mega-basepairs) per haploid genome
2.ASCII码和文件大小:Fastq文件所含内容均为ASCII码,每个ASCII码占用一个字节(Byte)空间,故:
Fastq文件大小 =(ID行长度 + reads长度 + 1个加号 + reads长度 + 4个换行符) × reads数目
只包含一条reads的FastQ文件大小:(7 + 60 + 1 + 60 + 4) × 1 = 132B
为了简化,我们忽略第三行的加号、换行符,并认为ID行长度在0~1个read长度,故
Fastq文件大小 = ~ 2.5 × reads长度 × reads数目
3.Fastq和Fastq.gz文件大小:在传输Fastq文件过程中,经常使用gzip程序对其进行压缩,以减小文件大小。
压缩比例:291852847/65573424 = 4.45078,所以
Fastq.gz文件大小 = ~ Fastq文件大小/4
4.从Fastq文件到比对的reads数:
比对的reads数目 = reads数目 × 比对率
(Fastq文件经常会进行去接头等前处理的工作,比对的reads长度与原始reads长度略有不同,此处暂时忽略)
综上:
1. 测序深度 = reads长度 × 比对的reads数目 / 参考序列长度
2. Fastq文件大小 = ~ 2.5 × reads长度 ×reads数目
3. Fastq.gz文件大小 = ~ Fastq文件大小 / 4
4. 比对的reads数目 = reads数目 × 比对率
假设比对率为90%,若要测30X的人类基因组需要62.5GB(Giga Base)的数据。
参考资料:
https://baike.baidu.com/item/fastQ%E6%A0%BC%E5%BC%8F
http://boyun.sh.cn/bio/?p=1901
http://blog.csdn.net/huyongfeijoe/article/details/51613827
https://baike.baidu.com/item/fasta%E6%A0%BC%E5%BC%8F
http://5282981.blog.51cto.com/5272981/1722857/
https://www.genedock.com/blog/2017/04/06/20170405Fastq%E6%96%87%E4%BB%B6%E5%A4%A7%E5%B0%8F%E5%92%8C%E6%B5%8B%E5%BA%8F%E8%A6%86%E7%9B%96%E5%BA%A6%E5%88%9D%E6%8E%A2/