【原創】生信分析常見文件格式說明
????生信分析中經常會遇到各種格式特殊的文件,例如:fasta、gff、gtf、gbk、m8、sam/bam、vcf 等;本文主要就生信分析中常見的一些文件格式做簡單說明,持續更新中。。。
FASTA
? ? fasta?是通用的序列文件格式,包含核酸序列及蛋白序列。常見的文件格式后綴有很多種,例如:.fasta、.fna、.fa 等,包括一些數據庫或軟件中下載或生成的 .cds、 .ffn、 .exon、 .pep、 .pro、 .faa 等其本質上也都是 fasta 格式文件。
? ? 一個 fasta?文件可含有多條核酸或蛋白序列,每條序列都可以由兩部分組成:
? ? 1、序列標識說明
? ? ? ? 以 “>”?開頭,后面接序列標識,到空格為止,例如?染色體編號、基因ID、基因名稱等具有特異性的標識,同一個fasta文件中一般要求各序列標識不可重復;空格后可增加序列描述信息,長度沒有限制;全部標識信息及描述信息必須在同一行。
? ? 2、序列
? ? ? ? 由常見的核酸符號或氨基酸符號組成,核酸序列一般不限制大小寫,氨基酸序列一般為大寫,單行長度不超過80bp(一般為60bp),可多行寫入。
????????ps:序列長度一般沒有嚴格限制,但在部分生信軟件中有較為嚴格的60bp/80bp長度要求。
GFF/GTF
? ? gff/gtf?是通用的基因組注釋文件格式,一般用于注釋基因組的基因的位置等信息。
? ? 詳細的格式說明及gff與gtf之間的轉換關系可參見本人之前的文章:《GTF與GFF》
GBK
? ? gbk格式即genbank格式,一般為基因組注釋信息文件,常見的文件后綴有:.gbk、.gb、.gbff等
m8
????m8格式文件是blast軟件比對結果的一種常見格式,共包含12列:
其中,各列說明如下:
????1. Query id: 查詢序列ID標識
????2. Subject id: 比對上的目標序列ID標識
????3. % identity: 序列比對的一致性百分比
????4. alignment length:符合比對的比對區域的長度
????5. mismatches:比對區域的錯配數
????6. gap openings:比對區域的gap數目
????7. q. start: 比對區域在查詢序列(Query id)上的起始位點
????8. q. end: 比對區域在查詢序列(Query id)上的終止位點
????9. s. start: 比對區域在目標序列(Subject id)上的起始位點
????10. s. end: 比對區域在目標序列(Subject id)上的終止位點
????11. e-value: 比對結果的期望值,解釋是大概多少次隨即比對才能出現一次這個score,Evalue越小,表明這種情況,從概率上越不可能發生,但是現在發生了,所以這個比對具有很重要的意義
????12. bit score: 比對結果的bit score值
sam/bam
? ? sam/bam格式是生信分析中大多數比對軟件的結果輸出格式,bam文件可看做是sam文件經特殊壓縮后的文件,兩者之間可通過samtools軟件(官網:http://www.htslib.org/)相互轉換,且bam文件也需要借助samtools軟件查看
samtools的常用命令如下:
bam文件查看:
samtools view??Sample-A.bam?
sam轉換為bam:
samtools view -bS -@ 16 -t? genome.fa.fai? Sample-A.sam > Sample-A.bam
bam轉換為sam:
samtools view -H? Sample-A.bam? >?Sample-A.sam
samtools view??Sample-A.bam? >> Sample-A.sam
sam/bam文件除頭部的“@”開頭的注釋信息外,比對信息內容共12列,各列說明如下
????1. QNAME 表示的是查詢序列的名稱即短片段(reads)的名稱;
????2. FLAG 以整數來表示比對的結果,不同數值有不同的意義,數值也可以是下列數的組合;? ? 比如如果FLAG是4的話則表示該reads沒有比對到參考序列上,flag為16表示single-end reads比對到參考序列的反鏈上,flag為83(64+16+2+1)表示paired-end reads中的第一個reads比對到參考序列上了。
????3. RNAME 表示參考序列的名稱,比如基因組的染色體編號等,如果沒有比對上則顯示為*; 【chromosome】
????4. POS 表示比對的起始位置,以1開始計數,如果沒有比對上則顯示為0; 【5'端起始位置】
????5. MAPQ 比對質量;(數字越大,特異性越高)
????6. CIGAR CIGAR 字符串,即比對的詳細情況, 記錄插入,刪除,錯配,后剪切拼接的接頭。簡要比對信息表達式(Compact Idiosyncratic Gapped Alignment Report),其以參考序列為基礎,使用數字+字母表示比對結果。比如3S6M1P1I4M,前三個堿基被剪切去除了,然后6個比對上了,有一個堿基缺失,有一個堿基插入,最后是4個比對上了,是按照順序的;
????7. RNEXT 雙末端測序中下一個reads比對的參考系列的名稱,如果沒有則用 " * " 表示,如果和前一個reads比對到同一個參考序列則用" = "表示;【mate名稱,記錄mate pair信息】
????8. PNEXT 下一個reads比對到參考序列上的位置,如果沒有則用0表示; 【mate的位置】
????9. ISIZE/TLEN query序列的模板長度或者插入長度,Template的長度,最左邊得為正+,最右邊的為負 -,中間的不用定義正負,不分區段(single-segment)的比對上,或者不可用時,表示為0;
????10. SEQ? reads的序列信息;
????11. QUAL? reads的序列質量信息,同FASTQ。
????12. 可選字段(optional fields)【程序用標記】? 格式如:TAG:TYPE:VALUE,其中TAG有兩個大寫字母組成,每個TAG代表一類信息,每一行一個TAG只能出現一次,TYPE表示TAG對應值的類型,可以是字符串、整數、字節、數組等。
VCF
????VCF用于描述SNP,INDEL和SV結果的文本文件,其詳細說明已在本人之前的文章中有詳細說明,歡迎查閱:《VCF文件格式說明》。
更多生信常見文件格式持續更新中。。。