<<寫在前面>>
bcftools?應(yīng)用場景:
在很多研究中,基因型數(shù)據(jù)為imputation 后的 VCF 文件,其 INFO 字段中已包含次要等位基因頻率(MAF)和imputation 質(zhì)量指標(biāo)(R2), 如下圖所示。
R2 過濾:屬于 imputation 質(zhì)量控制的核心步驟,必須在 VCF 階段完成。通過設(shè)置R2 ≥ 0.8去除 imputation 置信度較低、基因型不可靠的位點,這是下游分析的硬性要求。
MAF 過濾:在 VCF 階段進(jìn)行一次 MAF 過濾主要用于預(yù)過濾(可選);
?? 但是,由于 INFO 字段中的 MAF 并不一定等同于最終分析樣本子集中的真實等位基因頻率,最終的 MAF過濾仍然需在 PLINK 階段基于樣本內(nèi)重新計算的等位基因頻率完成,以確保統(tǒng)計結(jié)果的穩(wěn)定性和可解釋性。

bcftools 主要功能和優(yōu)勢:
輸入:?VCF/BCF(含壓縮格式)
主要功能:對 VCF/BCF 進(jìn)行位點/樣本子集選擇與條件篩選
輸出: VCF/BCF(含壓縮格式)
優(yōu)勢:相較于vcftools,bcftools在處理大規(guī)模 bgzip 壓縮 VCF 文件時具有顯著的速度和內(nèi)存優(yōu)勢。
本文中提到的 bcftools 版本:
module load bcftools/1.15.1
<<進(jìn)入主題>>?
變異位點過濾條件:
1. 過濾掉低頻 / 稀有變異,僅保留群體中常見的遺傳變異(通常 minor allele frequency ≥ 5%代表常見變異,對應(yīng)INFO 字段中的MAF)
2. 同時過濾掉低置信度變異,僅保留基因型推斷置信度較高的變異位點(通常?imputation quality?R2 >=0.8 代表高置信度變異,對應(yīng)INFO 字段中的R2),確保數(shù)據(jù)可靠性。
?? 前提:
VCF 的 INFO 字段中需包含MAF和R2(字段名需與表達(dá)式一致)。若字段缺失或命名不匹配,篩選條件將無法滿足,可能導(dǎo)致輸出為空或僅保留極少位點。建議先用bcftools view -h檢查 INFO 字段名。
$?module load bcftools/1.15.1
$ bcftools view -h all.vcf.gz?| grep '^##INFO'
Step 1:VCF 階段按 R2 + MAF過濾(并建立Index)
$ bcftools? view \
????-i? 'INFO/MAF>=0.05? ?&&? ?INFO/R2>=0.8'? \
? ??all.vcf.gz?\
????-Oz? -o??all.maf05_r208.vcf.gz
$?bcftools index -t all.maf05_r208.vcf.gz
參數(shù)解析:
-i(include),僅保留滿足條件的位點
INFO/MAF>=0.05,僅保留 MAF ≥ 0.05 的位點。
INFO/R2>=0.8,僅保留 R2 ≥ 0.8 的位點。
&& 或 &,邏輯運算符AND,表示所有條件需同時滿足
-Oz,指定輸出格式為bgzip 壓縮的 VCF 文件
-o,指定輸出文件名
Step 2. 將過濾后的 VCF?轉(zhuǎn) PLINK(二進(jìn)制)
plink \
????--vcf all.maf05_r208.vcf.gz?\
????--biallelic-only strict \
????--make-bed \
????--out all.maf05_r208
Step 3.?在 PLINK 里過濾(含“再算一次 MAF”)
plink \
????--bfile all.maf05_r208 \
????--mind 0.1 \
????--geno 0.05 \
????--maf 0.05 \
????--hwe 1e-6 \
????--make-bed \
????--out clean
輸出符合所有過濾條件的干凈的二進(jìn)制文件:clean.bed + clean.fam + clean.bim 用于后續(xù)分析。