您好,登錄后才能下訂單哦!
這篇文章主要介紹“vcf格式文件基礎(chǔ)知識與編輯操作的方法是什么”,在日常操作中,相信很多人在vcf格式文件基礎(chǔ)知識與編輯操作的方法是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”vcf格式文件基礎(chǔ)知識與編輯操作的方法是什么”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
1. VCF文件基礎(chǔ)知識介紹:
VCF文件介紹:
做過DNA重測序,群體遺傳進化,BSA,GWAS等項目的人都會遇到VCF文件,這個文件記錄了所有樣品基因組中所有位置變異(主要包括SNP和InDel)信息。后續(xù)幾乎所有的分析內(nèi)容都是基于此文件,比如進化樹分析、群體結(jié)構(gòu)分析、PCA分析、GWAS關(guān)聯(lián)分析等等。因此了解VCF文件格式及其記錄結(jié)果的意義非常重要。VCF文件其實是文本文件,可以用Windows當中文本編輯器軟件打開,比如editplus等。由于VCF文件往往很大(通常超過1G),在Windows系統(tǒng)下直接打開會消耗大量內(nèi)存進而造成卡死的現(xiàn)象。如果想順利打開的話,這里建議使用pilotedit。
下面是一個典型VCF文件的部分示例(可左右拖動):
##fileformat=VCFv4.0 ##fileDate=20090805 ##source=myImputationProgramV3.1 ##reference=1000GenomesPilot-NCBI36 ##phasing=partial ##INFO=<ID=NS,Number=1,Type=Integer,Description="Number of Samples With Data"> ##INFO=<ID=DP,Number=1,Type=Integer,Description="Total Depth"> ##INFO=<ID=AF,Number=.,Type=Float,Description="Allele Frequency"> ##INFO=<ID=AA,Number=1,Type=String,Description="Ancestral Allele"> ##INFO=<ID=DB,Number=0,Type=Flag,Description="dbSNP membership, build 129"> ##INFO=<ID=H2,Number=0,Type=Flag,Description="HapMap2 membership"> ##FILTER=<ID=q10,Description="Quality below 10"> ##FILTER=<ID=s50,Description="Less than 50% of samples have data"> ##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype"> ##FORMAT=<ID=GQ,Number=1,Type=Integer,Description="Genotype Quality"> ##FORMAT=<ID=DP,Number=1,Type=Integer,Description="Read Depth"> ##FORMAT=<ID=HQ,Number=2,Type=Integer,Description="Haplotype Quality"> #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT NA00001 NA00002 NA00003 20 14370 rs6054257 G A 29 PASS NS=3;DP=14;AF=0.5;DB;H2 GT:GQ:DP:HQ 0|0:48:1:51,51 1|0:48:8:51,51 1/1:43:5:.,. 20 17330 . T A 3 q10 NS=3;DP=11;AF=0.017 GT:GQ:DP:HQ 0|0:49:3:58,50 0|1:3:5:65,3 0/0:41:3 20 1110696 rs6040355 A G,T 67 PASS NS=2;DP=10;AF=0.333,0.667;AA=T;DB GT:GQ:DP:HQ 1|2:21:6:23,27 2|1:2:0:18,2 2/2:35:4 20 1230237 . T . 47 PASS NS=3;DP=13;AA=T GT:GQ:DP:HQ 0|0:54:7:56,60 0|0:48:4:51,51 0/0:61:2 20 1234567 microsat1 GTCT G,GTACT 50 PASS NS=3;DP=9;AA=G GT:GQ:DP 0/1:35:4 0/2:17:2 1/1:40:3
VCF文件的開頭是整體注釋信息,通常以##作為起始,其后一般接以FILTER,INFO,F(xiàn)ORMAT等字樣。
例如:以##FILTER開頭的行,表示注釋VCF文件當中第7列中縮寫詞的說明,比如q10為Quality below 10;##INFO開頭的行注釋VCF第8列中的縮寫字母說明,比如AF代表Allele Frequency也就是等位基因頻率;##FILTER開頭的行注釋VCF第9列中的縮寫字母說明;另外還有其他的一些信息,文件版本"fileformat=VCFv4.0"等等。
各列之間用tab空白隔開;前面9列為固定列,第10列開始為樣品信息列,可以無限多個;
#CHROM
POS
ID
REF
ALT
QUAL
FILTER
INFO
FORMAT
后面的列都為樣品基因型信息列
CHROM 記錄染色體編號
POS 記錄染色體位置信息
ID SNP/INDEL的dbSNP編號通常以rs開頭,一般只有人類基因組才有dbSNP編號
REF 參考基因組堿基類型,必須是A,C,G,T,N且都大寫。
ALT 變異堿基類型,必須是A,C,G,T,N,. 且都大寫,多個用逗號分割。"."表示這個地方?jīng)]有reads覆蓋為缺失。
QUAL 變異信息的檢測質(zhì)量值,越高越可靠。
FILTER 標記過濾結(jié)果的列,通常我們把VCF文件中的變異信息進行質(zhì)控,過濾掉低質(zhì)量的變異位點,如果該位點通過過濾標準那么我們可以在該列標記為"PASS",說明該列質(zhì)量值高。標記完之后我們就可以用其他工具,把標記為"PASS"的列給篩選出來,這樣方便后續(xù)分析。如果沒有應(yīng)用缺失值"."代替。
INFO 為附加信息列,一般以=;形式添加額外的注釋信息列,常見的如DP=18 表示該位點測序深度為18X;AF=0.1表示等位基因頻率為0.1;
FORMAT 為后面10列信息的說明列,通常以":"隔開各個縮寫詞。不同的變異檢測軟件可能會有差異,以下用GATK的檢測結(jié)果為例:
10列(包含)以后為樣品基因型列,各信息以":"分隔與FORMAT列一一對應(yīng);
GT 表示genotype,通常用”/” or “|”分隔兩個數(shù)字,“|”phase過也就是雜合的兩個等位基因知道哪個等位基因來自哪條染色體;0代表參考基因組的堿基類型;1代表ALT堿基類型的第一個堿基(多個堿基用","分隔),2代表ALT第二個堿基,以此類推;比如 REF列為:A, ALT列為G,T;那么0/1基因型為AG 雜合,1/1基因型為GG純合SNP;1/2代表GT基因型;./.表示缺失;
AD 兩種堿基各自支持的堿基數(shù)量,用","分開兩個數(shù)據(jù),分別代表兩個等位基因的深度;
DP 該樣品該變異位點的測序深度總和,也就是AD兩個數(shù)字的和;
PL 歸一化后各基因型的可能性,通常有三個數(shù)字用','隔開,順序?qū)?yīng)AA,AB,BB基因型,A代表REF,B代表ALT(也就是0/0, 0/1, and 1/1),由于是歸一化之后,數(shù)值越小代表基因型越可靠;那么最小的數(shù)字對應(yīng)的基因型判讀為該樣品的最可能的基因型;
GQ 針對PL的判讀得到的基因型的質(zhì)量值,此值越大基因型質(zhì)量值越好。由于PL歸一化之后通常最小的數(shù)字為0;那么基因型的質(zhì)量值取PL中第二小的數(shù)字,如果第二小的數(shù)字大于99,我們只取99,因為在GATK中再大的值是沒有意義的,第二小的數(shù)大于99的話一般說明基因型的判讀是很可靠的,只有當?shù)诙〉臄?shù)小于99的時候,才有必要懷疑基因型的可靠性。
介紹到這里,大家應(yīng)該對VCF文件有了一個初步理解,如有其他問題請下方留言。
2. VCF文件處理工具介紹:
篩選特定條件下的SNP/Indel信息是比較常見的個性化分析需求,不過VCF文件通常比較大,不建議在Windows當中處理。那么我們怎么篩選處理VCF文件呢?這里介紹一個Linux中非常好用的vcf處理工具,vcftools http://vcftools.sourceforge.net/man_latest.html。這是他的幫助鏈接; 功能非常豐富;vcftools是一款處理vcf文件的工具,體積小、運行速度快,可以按位點信息、堿基位置等信息篩選特定條件下的變異信息,也可以比較兩個vcf文件之間變異信息的差異,還可以對VCF文件拆分,格式轉(zhuǎn)換,質(zhì)量過濾篩選等等功能;強烈推薦使用;這里介紹一下我在工作中用過的一些命令選項。
vcf文件中可能會同時包含snp以及indel兩種變異類型,vcftools可以很快的將兩者進行分離。
使用方法:
過濾掉indel,只保留snp,用到的命令選項:--remove-indels。
執(zhí)行以下命令:
vcftools --remove-indels --recode --recode-INFO-all --vcf raw.vcf --stdout >raw.snp.vcf
過濾掉snp,只保留indel,用到的命令選項:--keep-only-indels。
執(zhí)行以下命令:
vcftools --keep-only-indels --recode --recode-INFO-all --vcf raw.vcf --stdout >raw.indel.vcf
這樣,就可以分別得到只包含snp和indel的vcf文件。
vcftools還可以挑選出基因組上某些區(qū)域的變異信息。
使用方法:
vcftools --vcf Variants.snp.unknown_multianno.vcf --chr A03 --from-bp 577700 --to-bp 607700 --out out_prefix --recode --recode-INFO-all
這里解釋一下各個參數(shù):
--vcf:后面跟的是vcf文件
--chr:后面跟篩選區(qū)域所在的染色體
--form-bp:后跟篩選區(qū)域的起始位置
--to-bp:后跟篩選區(qū)域的終止位置
--out:輸出文件的前綴
--recode:沒有此參數(shù)則不會輸出
vcf 文件中很多snp在某些樣品中是缺失的,也就是基因型為 "./." 。如果缺失率較高,這種snp位點在很多分析中是不能用的,需要去掉。這里用到的選項是 --max-missing。
使用方法:
vcftools --vcf snp.vcf --recode --recode-INFO-all --stdout --max-missing 1 > snp.new.vcf
--max-missing 后跟的值為 0-1 ,1代表不允許缺失,0代表允許全部缺失。
vcftools中有兩個參數(shù)可以計算vcf文件中snp的缺失率。
分別是:
--missing-indv:生成一個文件,報告每個樣品的缺失情況,該文件的后綴為“.imiss”。
--missing-site:生成一個文件,報告每個snp位點的缺失情況,該文件的后綴為“.lmiss”。
使用方法:
vcftools --vcf snp.vcf. --missing-site
運行以上命令后會在當前目錄生成一個 out.lmiss 文件,其格式如下:
CHR POS N_DATA N_GENOTYPE_FILTERED N_MISS F_MISS chr01 194921 988 0 368 0.37247 chr01 384714 988 0 204 0.206478 chr01 384719 988 0 202 0.204453 chr01 518438 988 0 488 0.493927 chr01 518473 988 0 452 0.45749 chr01 518579 988 0 418 0.423077 chr01 518635 988 0 428 0.433198 chr01 680786 988 0 346 0.350202 chr01 680834 988 0 412 0.417004
前兩列為snp所在位置,第三列為等位基因總數(shù),第5列為缺失的總數(shù),最后一列為缺失率。
vcftools --vcf snp.vcf. --missing-indv
運行以上命令后會在當前目錄生成一個 out.imiss 文件,其格式如下:
INDV N_DATA N_GENOTYPES_FILTERED N_MISS F_MISS 1 8747 0 3632 0.415228 10 8747 0 1264 0.144507 102 8747 0 2016 0.230479 105 8747 0 6322 0.722762 106 8747 0 2365 0.270378 107 8747 0 4376 0.500286 108 8747 0 5682 0.649594 109 8747 0 1877 0.214588 11 8747 0 1039 0.118784
第一列為樣品名稱,第二列為總的snp數(shù),第4列為缺失的總數(shù),最后一列為缺失率。
vcftools可以隨機抽取指定個樣品的vcf文件,用到的選項為 --max-indv ,指定要從vcf文件中隨機抽取指定個樣品。
使用方法:
隨機抽取5個樣品,執(zhí)行以下代碼:
vcftools --vcf snp.vcf --max-indv 5 --remove-indels --recode --out outfilename
到此,關(guān)于“vcf格式文件基礎(chǔ)知識與編輯操作的方法是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。