栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 数据挖掘与分析

NGS数据分析实践:03. 涉及的常用数据格式[1] - fasta和fastq格式

NGS数据分析实践:03. 涉及的常用数据格式[1] - fasta和fastq格式

NGS数据分析实践:03. 涉及的常用数据格式[1] - fasta和fastq格式
  • 1. fasta和fastq格式
    • 1.1 fasta格式
    • 1.2 fastq格式

系列文章:
二代测序方法:DNA测序之靶向重测序
NGS数据分析实践:00. 变异识别的基本流程
NGS数据分析实践:01. Conda环境配置及软件安装
NGS数据分析实践:02. 参考基因组及注释库的下载

测序数据分析中涉及的常用格式:测序得到的是带有质量值的碱基序列(fastq格式),参考基因组是(fasta格式),用比对工具把fastq格式的序列比对到对应的fasta格式的参考基因序列,就可以产生sam格式的比对文件。把sam格式的文本文件压缩成二进制bam文件可以节省空间,如果对参考基因组上面的各个区段标记它们的性质,比如哪些区域是外显子、内含子、UTR等等,这就是gtf/gff格式。如果只是为了单纯描述某个基因组区域,就是bed格式文件,记录染色体号以及起始终止坐标,正负链即可。如果是记录某些位点或者区域碱基的变异,就是vcf文件格式。

fasta/fastq(测序数据)→SAM/BAM(比对)→gff/gtf(描述基因组上的结构:坐标&类型)→Bigwig/Wiggle(测序深度)→bed(描述坐标)→vcf(突变信息)

存储序列:fasta/fastq
比对结果显示的文件:sam/bam
展示注释信息:gtf/gff/bed
突变信息:vcf

注:以下绿色PPT截图来自 生信技能树。

1. fasta和fastq格式 1.1 fasta格式

.fasta是存储有顺序的序列数据的文件后缀,包括常用的参考基因组序列、蛋白质序列、编码DNA序列(coding DNA sequence,简称CDS)、转录本序列等,文件后缀除了.fasta之外,也常用.fa或者.fa.gz(gz压缩)。

FASTA文件主要由两个部分构成:序列头信息(序列名字 + 注释信息)和具体的序列数据。
(1) 头信息独占一行,以大于号(>)开头作为识别标记,其中除了记录该条序列的名字之外,有时候还会接上其它的描述信息。
(2) 紧接的下一行是具体的序列内容,直到另一行碰到另一个大于号(>)开头的新序列或者文件末尾。

图示如下:

fasta 数据的序列部分说明:

N (端粒、着丝粒;重复序列,相对于soft masking,不用小写表示而用N表示) + atcg (soft masking:重复序列小写字母表示) + ATCG

fasta文件示例:

which bowtie2
# ~/biosoft/bowtie2/bowtie2-2.3.4.3-linux-x86_64/example/reference
less -S lambda_virus.fa 
grep '>' lambda_virus.fa

# ~/reference/genome/hg19
grep '>' hg19.fa
#>chr10
#>chr11
#>chr11_gl000202_random
#>chr12
#>chr13
#>chr14
#>chr15
#>chr16

less hg19.fa | grep ">" |cut  -d_ -f1 | sort | uniq -c | awk -F' >' '{print $1"t"$2}'| sort -k1,1nr #注意:使用uniq之前,需要先sort,否则,只能去掉相邻的重复
# 39 chrUn
# 8 chr6
# 6 chr17
# 5 chr9
# 4 chr4
# 3 chr1
# 3 chr19
# 3 chr8
1.2 fastq格式

.fastq格式是目前存储测序数据最普遍公认的数据格式。FASTQ是产生自测序仪的原始测序数据,由测序的图像数据转换过来,也是文本文件,文件大小依照不同的测序量(或测序深度)而有很大差异,小的可能只有几M,大的则常常有几十G上百G,文件后缀通常都是.fastq,.fq或者.fq.gz(gz压缩)。

注:
fasta:为参考基因组序列,不需要考虑质量问题;fastq:自己测序得到的序列,需要质控。

图示如下:

@行:参考 生信星球 好东西,攒着攒着就烂了


+行:可以与第1行相同;也可以用+占位,后边空着。有可能是类似于API接口,便于之后的数据格式向前兼容。
碱基质量值:用来定量描述碱基好坏程度的一个数值。如果测序测得越准确,这个碱基的质量就应该越高。即,可用碱基被测错的概率来描述它的质量值,错误率越低,质量值就越高。假定碱基的测序错误率为p_error,质量值为Q,它们之间的关系如下:Q = -10log(p_error) 。如果该碱基的测序错误率是0.01,那么质量值就是20(俗称Q20),如果是0.001,那么质量值就是30(Q30)。Q20和Q30的比例常被用来评价某次测序结果的好坏,比例越高就越好。

为了存储及处理方便,质量值被直接转换成了ASCII码,并与第二行的read序列构成一一对应的关系——每一个ASCII码都和它正上面的碱基对应。从下表中可以看到下限有33和64两个值,我们把加33的的质量值体系称之为Phred33,加64的称之为Phred64(Solexa的除外,它叫Selexa64)。现在一般都是使用Phred33体系,而且33也恰好是ASCII的第一个可见字符(’!’)。



示例数据:

ls -R #递归列出所有东西
wget https://mothur.s3.us-east-2.amazonaws.com/wiki/miseqsopdata.zip
unzip miseqsopdata.zip
cd MiSeq_SOP/
less -SN Mock_S280_L001_R1_001.fastq


文本操作练习:

# fastq每条序列是4行,可将其变为4列
cat Mock_S280_L001_R1_001.fastq | head -100 > tmp.fq
cat tmp.fq | paste - - - - |less -S
cat tmp.fq | paste - - - - |wc

# 查看第2行的第1个碱基
cat tmp.fq | paste - - - - | cut -f2 | cut -c1 # -c:第一个字符
cat Mock_S280_L001_R1_001.fastq | paste - - - - | cut -f2 | cut -c1 | sort | uniq -c 

其余文件格式见后续。

参考阅读:
http://genome.ucsc.edu/FAQ/FAQformat.html
从零开始完整学习全基因组测序数据分析:第2节 FASTA和FASTQ
生信星球 好东西,攒着攒着就烂了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/278858.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号