【生信】常见测序数据格式
文章的文字与图片全部/部分来源网络或学术论文,文章会持续修缮更新,仅供大家学习使用。
目录
在生物信息学中,由于不同数据的差异性非常大,需要统一的格式来记录数据的数据类型,数据来源,数据结构等等,便于数据的可重复利用,因此我们需要了解一些常见的测序数据格式。
1、FASTA
FASTA(fasta)格式,又称Pearson格式,主要发明人是威廉·皮尔森(William Raymond Pearson)和戴维德.李普曼(David J. Lipman)。
fasta格式是一种基于文本用于表示核酸序列或多肽序列的格式。其中核酸或氨基酸均以单个字母来表示,且允许在序列前添加序列名及注释。该格式已成为生物信息学领域的一项标准。FASTA序列格式是Blast工具常用的组织数据的基本格式,无论是数据库还是查询序列,大多数情况都使用FASTA序列格式。
FASTA文件以序列名和序列作为一个基本单元,各行记录信息。
FASTA文件格式:
首行:由">"开头的任意文字说明,用于序列标记,为了保证后续分析软件能够区分每条序列,单个序列的标识必须具有唯一性。
正文:为序列本身,只允许使用既定的核苷酸或氨基酸编码符号。通常核苷酸符号大小写均可,而氨基酸常用大写字母。
核苷酸序列
例1:下图为一个FASTA文件。
- 大于号“>”开头,表示一个序列的起始。
- gi号“gi|gi_identifier”,gi号类似与数据库中的流水号,由数字组成,一条核酸或者蛋白质改变了,将赋予一个新的gi号。
- “gi|187608668|ref|NM_001043364.2|”是序列的标识符,表示序列来源于NCBI的参考序列库,接收号为“NM_001043364.2”。
- Bombyx mori moricin (Mor)表示设备名称
- mRNA表示这是一条mRNA序列。
- AAACCG......是正文的序列信息,一般60-80个字符为一列,序列中允许空格,换行,空行,直到下一个大于号,表示该序列的结束。
例2:人类一个名为EGFR基因的部分序列
>ENSMUSG00000020122|ENSMUST00000138518
CCCTCCTATCATGCTGTCAGTGTATCTCTAAATAGCACTCTCAACCCCCGTGAACTTGGT
TATTAAAAACATGCCCAAAGTCTGGGAGCCAGGGCTGCAGGGAAATACCACAGCCTCAGT
以大于号“>”开头,接着是序列的标识符“ENSMUSG00000020122”,然后是序列的描述信息。换行后是序列信息,标准核苷酸符号一般用大写字母。
例3:网上找的一个例子
例4:一些fasta文件展示
为什么mRNA的序列还是用T来表示,而不是U?
这是为了保证数据的统一性,因为U只是在RNA中替换了原来的T,所以为了下游的方便分析处理,无论RNA序列还是DNA序列都是使用T而不是U。
核苷酸代码:
核苷酸代码 | 意义 | 核苷酸代码 | 意义 |
A | 翔安(adenosine) | S | G或C (强作用strong) |
C | 胞嘧啶(cytidine) | W | A或T (弱作用weak) |
G | 鸟嘌呤(guanine) | B | G或T或C |
T | 胸腺嘧啶核苷(thymidine) | D | G或A或T |
U | 尿嘧啶(uridine) | H | A或C或T |
R | G或A (puRine) | V | G或C或A |
Y | T或C (嘧啶pyrimidine) | N | A 或G或C或T (任意1种) |
K | G或T (酮化keto) | X | 未知的 |
M | A或C (胺化amino) | - | 片段长度不定 |
氨基酸序列
例:UniRef数据库中下载的人类血红蛋白α亚基的序列。
>sp|P69905|HBA_HUMAN Hemoglobin subunit alpha OS=Homo sapiens GN=HBA1
MVLSPADKTNVKAAWGKVGAHAGEYGAEALERMFLSFPTTKTYFPHFDLSHGSAQVKGHG
KKVADALTNAVAHVDDMPNALSALSDLHAHKLRVDPVNFKLLSHCLLVTLAAHLPAEFTP
AVHASLDKFLASVSTVLTSKYR
- P69905是这个序列在UniRef中的编号。
- HBA_HUMAN是这个序列的简称。
- Hemoglobin subunit alpha是全称。
- OS=Homo sapiens是物种。
- GN=HBA1是指基因的名字为HBA1。
- 正文为HBA1基因对应的蛋白的序列。
氨基酸代码:
氨基酸代码 | 意义 | 氨基酸代码 | 意义 |
A | 丙氨酸(Alanine) | O | 吡咯赖氨酸(Pyrrolysine) |
B | 天冬氨酸(Aspartic acid)或 天冬酰胺(Asparagine) | P | 脯氨酸(Proline) |
C | 半胱氨酸(Cysteine) | Q | 谷氨酰胺(Glutamine) |
D | 天冬氨酸(Aspartic acid) | S | 丝氨酸(Serine) |
E | 谷氨酸(Glutamic acid) | T | 苏氨酸(Threonine) |
F | 苯丙氨酸(Phenylalanine) | U | 硒半胱氨酸(Selenocysteine) |
G | 甘氨酸(Glycine) | V | 缬氨酸(Valine) |
H | 组氨酸(Histidine) | W | 色氨酸(Tryptophan) |
I | 异亮氨酸(Isoleucine) | X | 任意氨基酸 |
K | 赖氨酸(Lysine) | Y | 酪氨酸(Tyrosine) |
L | 亮氨酸(Leucine) | Z | 谷氨酸(Glutamic acid)或 谷氨酰胺(Glutamine) |
M | 甲硫氨酸(Methionine) | * | 翻译终止 |
N | 天冬酰胺(Asparagine) | - | 不确定长度空白占位符 |
R | 精氨酸(Arginine) | J | 亮氨酸(Leucine)或 异亮氨酸(Isoleucine) |
标识符:
数据库名称(Database Name) | 标识符(Identifier Syntax) |
GenBank | gb | accession | locus |
EMBL Data Library | emb|accession|locus |
DDBJ, DNA Database of Japan | dbj|accession|locus |
NBRF PIR | pir||entry |
Protein Research Foundation | prf||name |
SWISS-PROT | sp|accession|entry name |
Brookhaven Protein Data Bank | pdb|entry|chain |
Patents | pat|country|number |
GenInfo Backbone Id | bbs|number |
General database identifier | gnl|database|identifier |
NCBI Reference Sequence | ref|accession|locus |
Local Sequence identifier | lcl|identifier |
2、FASTQ
FASTA格式主要是把序列存储到数据库中的一种格式,但是它不适合储存我们刚刚测到的测序数据。因为它没有序列的质量信息。那一般带有测序质量信息的FASTQ格式就成了储存测序数据的常用格式。
FASTQ是一种同样是一种基于文本的存储生物序列和对应碱基(或氨基酸)质量的文件格式,后缀名通常为.fastq 或者.fq。与fasta不相同的是,它除了存储序列本身外还存储了序列中每个单元所对应的质量分数,所以fastq格式通常用于高通量测试数据的存储。
FASTA文件格式:
- 第一行由'@'开始,后面跟着序列的描述信息,这点跟FASTA格式是一样的。
- 第二行是序列。
- 第三行由'+'开始,后面也可以跟着序列的描述信息。
- 第四行是第二行序列的质量评价(测序的质量评价),字符数跟第二行的序列是相等的。Q=-10lgP ,其中P代表该碱基被测序错误的概率。
特别说明:
对于每个碱基的质量编码标示,不同的软件采用不同的方案,目前常见有两种:
1)Sanger,Q值的范围从0到92,对应的ASCII码从33到126,但是对于测序数据(raw read data)质量得分通常小于60,序列拼接或者mapping可能用到更大的分数。
2)Illumina 1.3+,Q值的范围从0到62对应的ASCII码从64到126,低于测序数据,得分在0到40之间;
例1:
@SEQ_ID
GATTTGGGGTTCAAAGCAGTATCGATCAAATAGTAAATCCATTTGTTCAACTCACAGTTT
+
!''*((((***+))%%%++)(%%%%).1***-+*''))**55CCF>>>>>>CCCCCCC65
- 第一行是@字母开头的序列标识符,类似于FASTA的第一行信息
- 第二行是原始的序列信息
- 第三行是+字母开头,后面是序列标识符或者是描述信息,或者什么都不加。
- 第四行是质量信息,对于每一条序列,其每一个碱基都有一个对应的测序质量值,和第二行的序列相对应,根据评分体系的不同,每个字符的含义表示的数字也不相同,通常用ASCII码的排序来表示质量值,下面是每个质量值排列,从左向右递增:
!"#$%&'()*+,-./0123456789:;<=>?
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
例2:
@HWUSI-EAS100R:6:73:941:1973#0/1
GATTTGGGGTTCAAAGCAGTATCGATCAAATAGTAAATCCATTTGTTCAACTCACAGTT
+HWUSI-EAS100R:6:73:941:1973#0/1
!''*((((***+))%%%++)(%%%%).1***-+*''))**55CCF>>>>>>CCCCCCC6
- 第一行以@开头,后面是reads的ID以及其他信息。HWUSI-EAS100R代表Illumina设备名称,6代表flowcell中的第六个lane,73代表第六个lane中的第73个tile,941:1973代表该read在该tile中的x:y坐标信息;#0,若为多样本的混合作为输入样本,则该标志代表样本的编号,用来区分个样本中的reads;/1代表paired end中的前一个read。
- 第二行为read的原始序列。
- 第三行以“+”开头,跟随着该read的名称(一般于@后面的内容相同),但有时可以省略,但“+”一定不能省。
- 第四行代表reads的质量。一般地,碱基质量从0-40,既ASCii码为从 “!”(0+33)到“I”(40+33)。Q=-10lgP ,其中P代表该碱基被测序错误的概率
例3:
ASCII码表如下:
3、GFF
GFF(General Feature Format)是一种用于描述基因或者其它序列元素的文件格式,简单来说是用于基因或者基因组注释的一个文件格式。
正是由于有统一的格式来表示基因等元素,使得GFF格式的文件被广泛的使用与mapping与基因组数据可视化方面,因为它是一种简单的、方便的对于DNA、RNA以及蛋白质序列的特征进行描述的一种数据格式,比如序列的那里到那里是基因,已经成为序列注释的通用格式,比如基因组的基因预测,许多软件都支持输入或者输出GFF格式。
以GFF3文件为例,GFF3文件中每一行为基因组的一个属性,分为9列,以TAB分开:
##gff-version 3
ctg123 . exon 1300 1500 . + . ID=exon00001
ctg123 . exon 1050 1500 . + . ID=exon00002
ctg123 . exon 3000 3902 . + . ID=exon00003
ctg123 . exon 5000 5500 . + . ID=exon00004
ctg123 . exon 7000 9000 . + . ID=exon00005
然后每一列的属性名称如下:
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | | ------------------ | ----------------- | ----------
-- | ---------------- | -------------- | ----- | ------ | ----- | ---------- | | reference
sequence | annotation source | feature type | start coordinate | end coordinate | score |
strand | frame | attributes |
- 参照序列:指出注释的对象。如一个染色体,克隆或片段。可以有多个参照序列
- 注释来源:注释的来源。如果未知,则用点代替
- 特征类型:属性的类型,一般有通用的标准
- 起点:属性对应片段的起点。从1开始
- 终点:属性对应片段的终点
- 得分:针对一些量化的属性来表示程度得分
- 链:+表示正链,-表示负链,.表示不指定
- 步长:通常是编码蛋白质制定下一密码子开始位置。
- 属性:一个包含众多属性的列表。格式为(tag=value),不同属性之间以分号相隔
4、BED
BED(Browser Extensible Data)格式也是一种常用的用于基因注释的数据格式。BED格式数据有专门开发的工具bedtools来专门处理,和之前提到的GFF文件有很多相似的地方。
BED文件示例如下:
chr7 127471196 127472363 Pos1 0 + 127471196 127472363 255,0,0
chr7 127472363 127473530 Pos2 0 + 127472363 127473530 255,0,0
chr7 127473530 127474697 Pos3 0 + 127473530 127474697 255,0,0
chr7 127474697 127475864 Pos4 0 + 127474697 127475864 255,0,0
chr7 127475864 127477031 Neg1 0 - 127475864 127477031 0,0,255
chr7 127477031 127478198 Neg2 0 - 127477031 127478198 0,0,255
chr7 127478198 127479365 Neg3 0 - 127478198 127479365 0,0,255
chr7 127479365 127480532 Pos5 0 + 127479365 127480532 255,0,0
chr7 127480532 127481699 Neg4 0 - 127480532 127481699 0,0,255
BED文件每行至少包括chrom,chromStart,chromEnd三列(必选);另外还可以添加额外的9列(可选)。
必选的三列:
- chrom:染色体或者是scaffold的名称,或scaffold是比染色体小一点的组装单位。
- chromStart:染色体或scaffold中特征的起始位置。通常第一个碱基编号为0。
- chromEnd:染色体或scaffold中特征的结束位置。
9个可选的BED字段:
- name:定义每一行属性的名称
- score:得分在0到1000之间,如果useScore参数为1,则得分是指灰度级别
- strand:表示链的方向,+表示正向,或者-表示负向
- thickStart: 起始位置,例如,基因显示中的起始密码子
- thickEnd:终止位置,例如:基因终止编码位置
- itemRgb:RGB形式的RGB值,例如(255,255,255)。但是需要 itemRgb属性设置为On
- blockCount:BED行中的外显子数目
- blockSizes: 用逗号分割的外显子的大小, 对应于blockCount的数目
- blockStarts:用逗号分割的列表, 所有外显子的起始位置,数目也与blockCount数目对应
5、SAM/BAM
SAM(sequence alignment map)是一种序列比对的文件格式,Sam格式是高通量测序数据分析的常用格式,因为它可以快速查找与坐标重叠的比对(它有记录一些序列索引信息),并且是一种高效的存储方式。
同时Sam格式也是是目前最常用的存放比对或联配数据的格式。无论是重测序,还是转录组,还是表观组,几乎所有流程都会产生SAM/BAM文件作为中间步骤,用于接下来分析。
Bam就是Sam格式的二进制文件,是一种通用的格式,由于Sam格式文件大小通常是十分巨大的,所以为了减少存储量等因素而将Sam转换为二进制格式以便于分析。
Sam格式数据可以分为两部分:注释信息(header section)和比对结果部分(alignment section).
a)注释信息:
注释信息可有可无,都是以@开头,用不同的tag表示不同的信息,主要有以下几种格式:
- @HD,说明符合标准的版本、对比序列的排列顺序。VN是格式版本;SO表示比对排序的类型,有unknown(default),unsorted,queryname和coordinate几种。
- @SQ,参考序列说明。SN:参考序列名字。LN:参考序列长度。这些参考序列决定了比对结果sort的顺序
- @RG,比对上的序列(read)说明。Read Group。1个sample的测序结果为1个Read Group。
- @PG,使用的程序说明。比对所使用的软件及版本,这个例子是hisat2,也有其他类似软件如bwa
- @CO,任意的说明信息。
b)比对结果部分:
每一行表示一个片段的比对信息,包括11个顺序固定的必选字段和一个可选的字段,字段之间用tag分割。这11个字段包括:
- QNAME:比对片段的(read)的名称信息。
- FLAG:位标识,表明比对类型:paring,strand,mate strand等等。
- RNAME:比对上的参考序列名。
- POS,position缩写,read比对到参考序列上,第一个碱基所在的位置,没匹配上设置为0。
- MAPQ:Mapping quality缩写,比对的质量分数,越高说明位置越唯一且可信度越高。
- CIGAR:(Compact Idiosyncratic Gapped Alignment Report),简要比对信息表达式,其以参考序列为基础,使用数字加字母表示比对结果,比对结果信息,匹配碱基数,可变剪接等等。
- RNEXT:下一个片段比对上的参考序列的编号,没有另外的片段,这里是*,同一个片段,用=**。
- PNEXT:下一个片段比对上的位置,如果不可用,此处为0。
- TLEN:观察到的Template的长度,最左边得为正,最右边的为负,中间的不用定义正负,不可用为0。
- SEQ:序列片段的序列信息,如果不存储此类信息设置为*。
- QUAL:序列的质量信息,格式同FASTQ一样,read质量的ASCII编码。
12.可选字段(optional fields):格式如:TAG:TYPE:VALUE,其中TAG有两个大写字母组成,每个TAG代表一类信息,每一行一个TAG只能出现一次,TYPE表示TAG对应值的类型,可以是字符串、整数、字节、数组等。
可选字段如下表所示TAG:TYPE:VALUE:
比对结果部分 11列的填写规则:
列数 | 列名 | 类型 | 填写规则/ |
1 | QNAME | String | [!-?A-~]{1,255} |
2 | FLAG | Int | [0,2^16 -1] |
3 | RENAME | String | *|[!-()+-<>-][!-]* |
4 | POS | Int | [0,2^29 -1] |
5 | MAPQ | Int | [0,2^8 -1] |
6 | CIGAR | String | *|([0-9]+[MIDNSHPX=])+ |
7 | MRNM | String | *|=|[!-()+-<>-][!-]* |
8 | MPOS | Int | [0,2^29 -1] |
9 | TLEN | Int | [-2 29 +1,2 29 -1] |
10 | SEQ | String | *|[A-Za-z=.]+ |
11 | QUAL | String | [!-~]+ |
第一列:QNAME | 表示对比序列的名称,即片段的编号。 |
第二列:FLAG | 数值结果如下: 1(01)该read是成对的paired reads中的一个。标示对应的二进制为01,标示read有多个测序数据,一般理解为有双端测序数据,另一条没有过滤掉; 4(100)该read没比对到参考序列上。 8(1000)与该read成对的matepair read没有比对到参考序列上。 16(10000)该read其反向互补序列能够比对到参考序列 32(100000)与该read成对的matepair read其反向互补序列能够比对到参考序列 64(1000000)在paired reads中,该read是与参考序列比对的第一条 128(10000000)在paired reads中,该read是与参考序列比对的第二条 256(100000000)该read是次优的比对结果 512(1000000000)该read没有通过质量控制 1024(10000000000)由于PCR或测序错误产生的重复reads 2048(100000000000)补充匹配的read 该列数值如果不是以上数字中的一个,那么它可能是某几个的和,由于是二进制表示,所以在对应位置的数字将会是1,方便机器统计该条序列匹配的情况 |
第三列:RNAME | 表示read比对的那条序列的序列名称(名称与头部的@SQ相对应),如果这列是“*”认为这条read没有比对上的序列,则这一行的第四,五,八,九 列是“0”,第六,七列与该列是相同的表示方法 |
第四列:POS | 表示read比对到RNAME这条序列的最左边的位置,如果该read能够完全比对到这条序列(CIGAR string为M)则这个位置是read的第一个碱基比对的位置,如果该read的反向互补序列比对到这条序列,则这个位置是read的反向互补序列的第一个碱基比对的位置,所以无论该read是正向比对到该序列,或是其反向互补序列比对到该序列,比对结果均是最左端的比对位置 |
第五列:MAPQ | 表示为mapping的质量值,该值的计算方法是mapping的错误率的-10log10值,之后四舍五入得到的整数,如果值为255表示mapping值是不可用的,如果是unmapped read则MAPQ为0,一般在使用bwa mem或bwa aln(bwa 0.7.12-r1039版本)生成的sam文件,第五列为60表示mapping率最高,一般结果是这一列的数值是从0到60,且0和60这两个数字出现次数最多 |
第六列:CIGAR | reads mapping到第三列序列的mapping状态,对于mapping状态可分为以下几类: M:alignment match ( match or mismatch) 表示read可mapping到第三列的序列上,则read的碱基序列与第三列的序列碱基相同,表示正常的mapping结果,M表示完全匹配,但是无论reads与序列的正确匹配或是错误匹配该位置都显示为M I:表示read的碱基序列相对于第三列的RNAME序列,有碱基的插入 D:表示read的碱基序列相对于第三列的RNAME序列,有碱基的删除 N:表示可变剪接位置,表示skipped,跳过这段区域。 P:padding (silent deletion from padded reference),表示padding(填补)。 S:soft clipping (clipped sequences present in SEQ)表示被剪切的序列存在于序列中。S 一般会和H成对出现,当有H出现时,一定会有一个与之对应的S出现 H:hard clipping (clipped sequences NOT present in SEQ)表示被剪切的序列不存在于序列中。H 只出现在一条read的前端或末端,但不会出现在中间, clipped:均表示一条read的序列被分开,之所以被分开,是因为read的一部分序列能匹配到第三列的RNAME序列上,而被分开的那部分不能匹配到RNAME序列上。 =:表示正确匹配到序列上 X: 表示错误匹配到序列上 S 可以单独出现,而H必须有与之对应的S出现时才可能出现,不可在相同第一列的情况下单独出现 N 如果是mRNA-to-genome,N出现的位置代表内含子,其它比对形式出现N时则没有具体解释M/I/S/=/X:这些数值的加和等于第10列SEQ的长度 |
第七列:MRNM | 这条reads第二次比对的位置,在利用bwa mem产生sam文件时 如果该列是“”而第3列RNAME不是“”则表示该reads比对到第3列显示序列名的序列上,而没有比对到其他位置,在利用bwa aln及bwa sampe比对生成的sam文件,如果和上述情况相同,则第7列为“=”,上述情况均表示该reads只比对到这一个位置。如果第3列RNAME和第7列MRNM都为“*”,则说明这条reads没有匹配上的序列,如果这条reads匹配两个序列,则第一个序列的名称出现在第3列,而第二个序列的名称出现在第7列 |
第八列:MPOS | 该列表示与该reads对应的mate pair reads的比对位置,如果这对pair-end reads比对到同一条reference序列上,在sam文件中reads的id出现2次,Read1比对的第4列等于Read2比对的第8列。同样Read1比对的第8列等于Read2比对的第4列。例如: 第1列(Read id)····第4列(Read1比对位置)····第8列(mate-pair reads比对位置) 22699:1759····124057649····124057667 22699:1759····124057667····124057649 相同的reads id一个来自Read1文件,一个来自Read2文件,第4列和第8列是对应的。 表示下一个片段比对上的位置,如果不可用,此处为0。 |
第九列:TLEN | signed observed Template LENgth (可以理解为文库插入片段长度) 如果R1端的read和R2端的read能够mapping到同一条Reference序列上(即第三列RNAME相同),则该列的值表示第8列减去第4列加上第6列的值,R1端和R2端相同id的reads其第九列值相同,但该值为一正一负,R1文件的reads和R2文件的reads,相同id的reads要相对来看。在进行该第列值的计算时,如果取第6列的数值,一定要取出现M的值,S或H的值不能取。 表示Template的长度。如果第八列大于第四列,则为正数,否则负数。 |
第十列:SEQ | 表示序列片段的序列信息,(注意CIGAR中M/I/S/=/X对应数字的和要等于序列长度),表示read的碱基序列,如果是比对到互补链上则是反转互补序列。 |
第十一列:QUAL | 表示read的质量,用ASCII编码表示。 |
例1:
头部区域
@HD VN:1.0 SO:unsorted
@SQ SN:17 LN:83257441
@RG ID:sample01
@PG ID:hisat2 PN:hisat2 VN:2.1.0 CL:/home/bio/bin/hisat2/hisat2-align-s --wrapper basic-0 -c GTGCTGAACGACGAGGACTGCCGGGAGTTCCCCTGGCAC
主体部分介绍,下面是一行文件
FCC0YG3ACXX:2:1103:1572:139769#GCTTAATG 99 chr10 60001 0 90M = 60390 479
GAATTCCTTGAGGCCTAAATGCATCGGGGTGCTCTGGTTTTGTTGTTGTTATTTCTGAATGACATTTACTTTGGTGCTCTTTATTTTGCG
CCCFFFFFHHHHHJJJJJJJJIJJJJJJJ?HHGIJJJBFHIJIJIDHIHIEHJJIJJIJJJHHGHHHFFFFFFEDCEEECCDDDDEECDD
XT:A:R NM:i:0 SM:i:0 AM:i:0 X0:i:2 X1:i:0 XM:i:0 XO:i:0 XG:i:0 MD:Z:90
XA:Z:chr18,+14415,90M,0; RG:Z:120618_I245_FCC0YG3ACXX_L2_SZAXPI010030-30
拆分
1:FCC0YG3ACXX:2:1103:1572:139769#GCTTAATG
2:99
3:Chr10
4:60001
5:0
6:90M
7:=
8:60390
9:479
10:GAATTCCTTGAGGCCTAAATGCATCGGGGTGCTCTGGTTTTGTTGTTGTTATTTCTGAATGACATTTACTTTGGTGCTCTTTATTTTGCG
11:CCCFFFFFHHHHHJJJJJJJJIJJJJJJJ?HHGIJJJBFHIJIJIDHIHIEHJJIJJIJJJHHGHHHFFFFFFEDCEEECCDDDDEECDD
12:XT:A:R NM:i:0 SM:i:0 AM:i:0 X0:i:2 X1:i:0 XM:i:0 XO:i:0 XG:i:0 MD:Z:90 XA:Z:chr18,+14415,90M,0; RG:Z:120618_I245_FCC0YG3ACXX_L2_SZAXPI010030-30
6、VCF
VCF(Variant Call Format)是用于描述SNP,INDEL和SV结果的文本文件,是存储变异位点的标准格式
以下是VCF格式的一个样例:
这个数据可以包括两个部分:
- 注释部分:##表示,可以找到接下来每一个位点的描述的tag
- 主体部分:包含10列数据,主题部分每一行代表一个variant的信息
- CHROM : 参考序列名称
- POS : variant所在的位置,如果是INDEL的话,位置是INDEL的第一个碱基位置
- ID : variant的ID。同时对应着dbSNP数据库中的ID,若没有,则默认使用.
- REF : 参考序列的碱基
- ALT : variant的碱基
- QUAL : variants的质量。Phred格式的数值,代表着此位点是纯合的概率,此值越大,则概率越低,代表着次位点是variants的可能性越大(表示变异碱基的可能性)
- FILTER : 用于表示次位点是否要被过滤掉
- INFO : variant的相关信息,这里有很多的内容
- FORMAT : variants的格式和基因型的信息