查看原文
其他

【直播】我的基因组81:看看我的vcf文件的vaf分布情况

2017-05-24 Jimmy 生信技能树

这一讲中,我们对VCF中的"VAF"简单的来看一起,如果你对VCF文件还不了解的话,那你就要自我批评一下了。在基因组直播刚开始的时候,我还专门对VCF文件进行了简述【直播】我的基因组28-必须要理解vcf格式记录的变异位点信息.  今天不说别的,我们专门对看一下VAF的分布情况。


    VAF",就是variant allele frequency 或者 variant allele fraction

对于NGS测序数据来说,就是跟参考基因不同的reads与总的测序reads的比值。



一般在VCF文件里面,会有DP4这个信息,可以很容易算出vaf值,如下;

得到上面数据的代码是:

首先是shell

  1. cat  autochr.highQuali.varType | perl -alne '{next if /^#/;/DP4=(.*?);.*VARTYPE=(.*?)\s/;print "$F[0],$1,$2"}'>DP4.stat


然后是R

  1. a=read.csv('DP4.stat',stringsAsFactors = F,header = F)

  2. colnames(a)=c('chr','ref_f','ref_r','alt_f','alt_r','type')

  3. a=a[grepl('chr',a[,1]),]

  4. ## Number of high-quality ref-forward , ref-reverse, alt-forward and alt-reverse bases

  5. head(a)

  6. #lapply(2:5, function(i){ a[,i]=as.numeric(a[,i]) })

  7. a[,2]=as.numeric(a[,2])

  8. a[,3]=as.numeric(a[,3])

  9. a[,4]=as.numeric(a[,4])

  10. a[,5]=as.numeric(a[,5])

  11. a$vaf=(a$alt_f+a$alt_r)/(a$alt_f+a$alt_r+a$ref_f+a$ref_r )

  12. table(a[,c(1,6)])

  13. snp=subset(a,type=='SNP')

  14. head(snp)

  15. hist(snp$vaf)

  16. indel=subset(a,type!='SNP')

  17. head(indel)

  18. hist(indel$vaf)


正常人的二倍体基因组位点只有杂合或者纯合两种情况,对于纯合那么vaf必然是1,对于杂合,必然是0.5。但是现实测序得到的结果远比这要复杂,尤其是测序深度不够的时候。因为测序本身具有随机性,而且还有很多系统误差。理想情况也只能像是扔硬币。



我的vcf文件里面所有的snp突变位点的vaf值分布如下:

可以看到纯合位点和杂合位点有一个很明显的分界线,就是我们通常说的二八原则咯。

对杂合位点来说,理论上跟扔硬币一样,是概率事件。



还有,我的vcf文件里面所有的indel突变位点的vaf值分布如下:

一般来说,DP4只要比对之后很容易从bam文件里面算出来(samtools mpileup命令即可),其实最好的情况下不需要各种call variation的软件了,简单的判断语句就知道各个位置是不是变异了,是纯合呢还是杂合。但是我们说过,实际的测序结果往往是很复杂的,在很多位点,普通的判断语句并不适用,即使是主流的variation caller的表现也往往不能统一。

而文献里面对TCGA里面的癌症样本的somatic mutation的vaf统计如下:


Figure 7 Distribution of the Variant Allele Fraction (VAF) of somatic mutations in one sample of lung adenocarcinoma from the TCGA study .


文章来源:Computational methods and resources for the 

interpretation of genomic variants in cancer


可以看出tumor里面的vaf分布其实已经不再是扔硬币那样的概率了,对于杂合位点来说。

原因很多,首先tumor不一定是单纯的二倍体了,其次tumor样品一般来说本身异质性高,而我们测序是混合多个细胞的,有一些突变有一些并不突变。而且纯合的somatic mutation几乎没有,因为somatic mutation是tumor过滤了normal后留下来的变异位点,不是遗传多样性,突变这个过程既然是后天产生的,就很难保证取样部分的几百万个细胞全部突变了。

With cancer data it is important to look at the allele frequency in the sample. Most cancer samples are a mixture of non-cancerous cells mixed with cancerous cells that are clonal expansions of beneficial mutations (to the cancer). So, as you say, a 0.5 frequency indicates the site is heterozygous in the individual. A lower frequency might suggest it is a tumor mutation that has swept through the tumor cells, and an even lower frequency suggests it is a clonal subpopulation.



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存