Vcf檔案格式

2022-05-08 12:09:10 字數 3582 閱讀 8852

vcf檔案格式是gatk鍾愛的表示遺傳變異的一種檔案格式。

就拿gatk給出的vcf例子說明吧,下面這個檔案只表示了乙個完整vcf檔案的前幾個snp。

看上去確實有點複雜,那就把它分為兩部分看吧,第一部分把他歸為說明檔案,就是每一列最前面有2個#符號的那些列所提到的就是為了解釋下面「正文」info列中可能要出現的一些tags和和format列中對基因型的表示。第二部分可以歸為下面的內容:

#chrom  pos id      ref alt qual    filter  info    format  na12878

chr1    873762  .       t   g   5231.78 pass    ac=1;af=0.50;an=2;dp=315;dels=0.00;hrun=2;haplotypescore=15.11;mq=91.05;mq0=15;qd=16.61;sb=-1533.02;vqslod=-1.5473 gt:ad:dp:gq:pl   0/1:173,141:282:99:255,0,255

chr1    877664  rs3828047   a   g   3931.66 pass    ac=2;af=1.00;an=2;db;dp=105;dels=0.00;hrun=1;haplotypescore=1.59;mq=92.52;mq0=4;qd=37.44;sb=-1152.13;vqslod= 0.1185 gt:ad:dp:gq:pl  1/1:0,105:94:99:255,255,0

chr1    899282  rs28548431  c   t   71.77   pass    ac=1;af=0.50;an=2;db;dp=4;dels=0.00;hrun=0;haplotypescore=0.00;mq=99.00;mq0=0;qd=17.94;sb=-46.55;vqslod=-1.9148 gt:ad:dp:gq:pl  0/1:1,3:4:25.92:103,0,26

chr1    974165  rs9442391   t   c   29.84   lowqual ac=1;af=0.50;an=2;db;dp=18;dels=0.00;hrun=1;haplotypescore=0.16;mq=95.26;mq0=0;qd=1.66;sb=-0.98 gt:ad:dp:gq:pl 0/1:14,4:14:60.91:61,0,255

chrom:       表示變異位點是在哪個contig 裡call出來的,如果是人類全基因組的話那就是chr1…chr22,chrx,y,m了。

id:            如果call出來的snp存在於dbsnp資料庫裡,就會顯示相應的dbsnp裡的rs編號。

qual:         可以理解為所call出來的變異位點的質量值。q=-10lgp,q表示質量值;p表示這個位點發生錯誤的概率。因此,如果想把錯誤率從控制在90%以上,p的閾值就是1/10,那lg(1/10)=-1,q=(-10)*(-1)=10。同理,當q=20時,錯誤率就控制在了0.01。

filter:       理想情況下,qual這個值應該是用所有的錯誤模型算出來的,這個值就可以代表正確的變異位點了,但是事實是做不到的。因此,還需要對原始變異位點做進一步的過濾。無論你用什麼方法對變異位點進行過濾,過濾完了之後,在filter一欄都會留下過濾記錄,如果是通過了過濾標準,那麼這些通過標準的好的變異位點的filter一欄就會注釋乙個pass,如果沒有通過過濾,就會在filter這一欄提示除了pass的其他資訊。如果這一欄是乙個「.」的話,就說明沒有進行過任何過濾。

到現在,我們就可以解釋上面的例子了:

chr1:873762是乙個新發現的t/g變異,並且有很高的可信度(qual=5231.78)。

chr1:877664是乙個已知的變異為a/g 的snp位點,名字rs3828047,並且具有很高的可信度(qual=3931.66)。

chr1:899282是乙個已知的變異為c/t的snp位點,名字rs28548431,但可信度較低(qual=71.77)。

chr1:974165是乙個已知的變異為t/c的snp位點,名字rs9442391,但是這個位點的質量值很低,被標

成了「lowqual」,在後續分析中可以被過濾掉。

vcf檔案看起來很複雜,挺嚇人的樣子,但是裡面大部分都是一些tags,而這些tags基本上都是在vasr中過濾用的,能夠理解每個tags的意思最好,如果實在不理解也就不用管了。其實最關鍵的資訊也就是那麼幾列:

chr1    873762      .       t   g   [clipped]  gt:ad:dp:gq:pl    0/1:173,141:282:99:255,0,255

chr1    877664  rs3828047   a   g   [clipped]  gt:ad:dp:gq:pl    1/1:0,105:94:99:255,255,0

chr1    899282  rs28548431  c   t   [clipped]  gt:ad:dp:gq:pl    0/1:1,3:4:25.92:103,0,26

其中最後面兩列是相對應的,每乙個tag對應乙個或者一組值,如:

chr1:873762,gt對應0/1;ad對應173,141;dp對應282;gq對應99;pl對應255,0,255。

gt:    表示這個樣本的基因型,對於乙個二倍體生物,gt值表示的是這個樣本在這個位點所攜帶的兩個等位基因。0表示跟ref一樣;1表示表示跟alt一樣;2表示第二個alt。當只有乙個alt 等位基因的時候,0/0表示純和且跟ref一致;0/1表示雜合,兩個allele乙個是alt乙個是ref;1/1表示純和且都為alt;

ad:    對應兩個以逗號隔開的值,這兩個值分別表示覆蓋到ref和alt鹼基的reads數,相當於支援ref和支援alt的測序深度。

dp:    覆蓋到這個位點的總的reads數量,相當於這個位點的深度(並不是多有的reads數量,而是大概一定質量值要求的reads數)。

pl:      對應3個以逗號隔開的值,這三個值分別表示該位點基因型是0/0,0/1,1/1的沒經過先驗的標準化phred-scaled似然值(l)。如果轉換成支援該基因型概率(p)的話,由於l=-10lgp,那麼p=10^(-l/10),因此,當l值為0時,p=10^0=1。因此,這個值越小,支援概率就越大,也就是說是這個基因型的可能性越大。

gq:   表示最可能的基因型的質量值。表示的意義同qual。

舉個例子說明一下:

chr1    899282  rs28548431  c   t   [clipped]  gt:ad:dp:gq:pl    0/1:1,3:4:25.92:103,0,26

在這個位點,gt=0/1,也就是說這個位點的基因型是c/t;gq=25.92,質量值並不算太高,可能是因為cover到這個位點的reads數太少,dp=4,也就是說只有4條reads支援這個地方的變異;ad=1,3,也就是說支援ref的read有一條,支援alt的有3條;在pl裡,這個位點基因型的不確定性就表現的更突出了,0/1的pl值為0,雖然支援0/1的概率很高;但是1/1的pl值只有26,也就是說還有10^(-2.6)=0.25%的可能性是1/1;但幾乎不可能是0/0,因為支援0/0的概率只有10^(-10.3)=5*10-11。

作者 葡萄糖

郵箱 [email protected]

vcf檔案格式詳細解釋

vcf具有表頭部分和正文部分,其中表頭部分是對正文部分中出現的縮寫的解釋。vcf的正文部分,必須要有的是前面8列,一般來說有10列,分別是 chrom posid refalt qual filter 來自於 filter info format 可能會有樣本的名稱 chrom 和 pos 參考序列...

Oracle 控制檔案格式ctl檔案格式

options skip 1,errors 10 load data characterset zhs16gbk infile into table table name truncate fields terminated by optionally enclosed by trailing nu...

VCF格式詳解

cvf是用於描述snp,indel和sv結果的文字檔案。在gatk軟體中得到最好的支援,當然samtools得到的結果也是cvf格式,和gatk的cvf格式有點差別。先給出乙個vcf檔案的範例 fileformat vcfv4.0 chrom pos id ref alt qual filter i...