variant的过滤 | filtering and prioritizing genetic variants
WGS和WES测序和分析会产生大量的variant数据。
显然直接分析全部的variant是非常不靠谱的。
做疾病的话,有一些常用的过滤套路。
variant作用于基因表达主要分两大类:
1. coding,可以直接影响RNA的形成,以及后面蛋白的折叠组装;
2. non-coding,现在最流行的就是enhancer这个媒介,已经有比较好的结果了。
过滤的必要性
首先GWAS已经做了,要理解GWAS产生了哪些结果,GWAS的局限性在哪?
Our previous meta-analysis of genome-wide association studies estimated that common variants together account for a small proportion of heritability estimated from family studies.4 Rare variants might therefore contribute significantly to the missing heritability.
Most of these variants (77.5%) were novel or rare (MAF < 1%).
common variants是很容易通过GWAS分析找到的,因为出现的频率较高,很少的样本就有很大的power来把它们检测出来,但common variant通常都是在非编码区的,通过非常复杂的调控来影响疾病,而且common variant的解释度很低,并不是疾病的主导因素。所以,目前都转向了rare variants,rare的通常都在编码区,直接改变了蛋白,影响疾病的方式比较直接,但显然我们需要非常大的样本量才有足够的power来检测出rare variants。
The analysis showed the strongest association of 328 variants with HSCR (P < 5 10–8), all of which mapped to the known disease susceptibility loci of RET and NRG1 (Figure 1A, upper panel).
GWAS直接找到了328个显著的variants,但显然它们的LD高度相关,最终也就是两个gene而已。而且这两个基因早就已知了,所以这个GWAS在初级层面没有任何新的有价值的发现。
Among the 936 WGS samples, a total of 4985 protein-truncating URVs were detected. 这基本就是我需要用到的数据了。
关于PCR扩增时候产生的错误,以及测序质量产生的错误。
用DP、GQ可以过滤一大部分,还有后面的BQSR也可以矫正。
可能用到的数据库:
1. 1000 genome,测得人太少,才千把个,到某个群体就更少了
2. gnomAD,125,748 exome sequences and 15,708 whole-genome sequences,感受一下这个霸气的测序量
3. ExAC,外显子测序,60,706 unrelated individuals
4. ensemble
注意的问题:
1. 疾病的人群,我们关注的是East Asian
2. 疾病的发病率,highest among Asians (2.8/10,000 live births),一般设在千分之5比较靠谱
比较好用的变异注释工具(不同工具注释出来的结果差异还是很大的,见paper)
perl annotate_variation.pl -buildver hg19 -downdb -webfrom annovar refGene humandb/
annotate_variation.pl -out ex1 -build hg19 example/ex1.avinput humandb/
convert2annovar.pl -format vcf4 HK152C.vcf > HK152C.avinput
annotate_variation.pl -out HK152C -build hg19 HK152C.avinput /home/lizhixin/softwares/annovar/humandb/
这是实际的时候,需要把vcf转成特定的格式。
注释出来的functional consequences结果:nonsynonymous SNV, synonymous SNV, frameshift insertion, frameshift deletion, nonframeshift insertion, nonframeshift deletion, frameshift block substitution, nonframshift block substitution
什么是nonframeshift deletion?看这里,就是以3个为一组,删除了,并没有影响阅读框架。
annovar也可以用来过滤variants
annotate_variation.pl -downdb -webfrom annovar -build hg19 gnomad211_exome humandb/
annotate_variation.pl -downdb -webfrom annovar -build hg19 gnomad211_genome humandb/
java -jar /home/lizhixin/softwares/kggseqhg19/kggseq.jar --buildver hg19 --vcf-file HSCR.WGS.2_5.variants.vcf.gz --db-filter 1kgeas201305,gadexome,gadgenome --rare-allele-freq 0.005 --o-vcf
'--rare-allele-freq c' will excluded variants with alternative allele frequency EQUAL to or over c in the reference datasets
过滤的标准
- allele frequency,如:把高于千分之5的过滤掉
- 已知基因集
- 杂合纯合
- protein-truncating (stopgain, splicing, or frameshift)
example: rs2435357
gnomAD,这还能用allele frequency来过滤吗?这个是common variants,在非编码区,effect size是非常小的。
Variant Annotation 参见paper
Annotation was done using KGGseq for protein function against the RefGene, pathogenicity, and population frequencies.
We defined protein-truncating variants as those that lead to (1) gain of the stop codon, (2) frameshift and (3) alteration of the essential splice sites.
Damaging variants include all proteintruncating variants and missense or in-frame variants predicted to be deleterious by KGGseq. Benign variants are missense variants or in-frame variants predicted benign by KGGseq.
Finally, protein-altering variants comprise both damaging and benign variants. Rare variants are those whose minor allele frequency (MAF) is <0.01 in public databases. Ultra-rare variants (URVs) are defined as a singleton variant, that is, one that appeared only once in our whole data set, not present in dbSNP138 or public databases
参见KGGseq的这个命令:Gene feature filtering
variant的类型:
- Putative LoF variants
- Nonsynonymous and missense variants
- Synonymous variants
- Exonic variants
A frameshift mutation is a genetic mutation caused by a deletion or insertion in a DNA sequence that shifts the way the sequence is read.
a transcript is defined by its exons, introns and UTRs and their locations
牢记经典的基因结构模型非常重要:
梳理一下:
在基因组上,有promoter和enhancer,他们在转录因子的作用下启动转录过程,然后就进入基因的结构,基因的前后都有UTR,就是不转录的区域,然后就是由Exon和Intron交替排列的核心区域。intron里面往往有很多调控元件,如enhancer。
参考:
A practical guide to filtering and prioritizing genetic variants
Choice of transcripts and software has a large effect on variant annotation
Gene Structure - mRNA和蛋白是如何转化而来的
Regulation of Gene Expression: Operons, Epigenetics, and Transcription Factors - 调控是如何进行的
Eukaryotic Gene Regulation part 1
细节操作:
Extract subset of samples from multigenome vcf file
拆分样本,独立注释:
for i in HK152C HK154C HK162C HK175C HK180C; do
echo $i
vcf-subset -e -c $i hscr2zxl.sel.vcf.gz > ${i}.vcf # | bgzip -c
done
无义介导的mRNA降解(nonsense-mediated mRNA decay,NMD)
Nonsense-mediated RNA decay in the brain: emerging modulator of neural development and disease
variant的过滤 | filtering and prioritizing genetic variants的更多相关文章
- LINQ Operators之过滤(Filtering)
转:http://www.cnblogs.com/lifepoem/archive/2011/11/16/2250676.html 在本系列博客前面的篇章中,已经对LINQ的作用.C# 3.0为LIN ...
- LINQ之路11:LINQ Operators之过滤(Filtering)
在本系列博客前面的篇章中,已经对LINQ的作用.C# 3.0为LINQ提供的新特性,还有几种典型的LINQ技术:LINQ to Objects.LINQ to SQL.Entity Framework ...
- 变异的功能 | variants function | coding | non-coding
variant主要分为两类: coding noncoding 这两大类的分析方法截然不同,coding主要直接影响了mRNA和蛋白:而noncoding,主要是影响调控. coding编码区如何分析 ...
- 利用maven中resources插件的copy-resources目标进行资源copy和过滤
maven用可以利用如下配置进行资源过滤,pom.xml的配置如下: <build> <!-- 主资源目录 --> <resources> <resource ...
- 三 drf 认证,权限,限流,过滤,排序,分页,异常处理,接口文档,集xadmin的使用
因为接下来的功能中需要使用到登陆功能,所以我们使用django内置admin站点并创建一个管理员. python manage.py createsuperuser 创建管理员以后,访问admin站点 ...
- drf 认证、权限、限流、过滤、排序、分页器
认证Authentication 准备工作:(需要结合权限用) 1. 需要使用到登陆功能,所以我们使用django内置admin站点并创建一个管理员. python manage.py creates ...
- DRF之权限认证,过滤分页,异常处理
1. 认证Authentication 在配置文件中配置全局默认的认证方案 REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_f ...
- drf07 过滤 排序 分页 异常处理 自动生成接口文档
4. 过滤Filtering 对于列表数据可能需要根据字段进行过滤,我们可以通过添加django-fitlter扩展来增强支持. pip install django-filter 在配置文件sett ...
- drf之组件(认证、权限、排序、过滤、分页等)和xadmin、coreapi
认证Authentication 可以在配置文件中配置全局默认的认证方案 REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_fr ...
随机推荐
- input限制输入
input 只能输入数字.字母.汉字等 1.文本框只能输入数字代码(小数点也不能输入) <input onkeyup="this.value=this.value.replace( ...
- 【Git】.DS_Store 是什么文件
一.为啥会注意到该文件 合并代码的时候,.DS_Store文件发生了冲突,然后进入到项目目录去看,果然存在该文件,就比较好奇该文件是干什么的. 二..DS_Store 是什么文件 .DS_Store( ...
- Unity 渲染教程(五):多个光源
https://www.jianshu.com/p/c1a9a5d27765 对每个物体渲染多个光源的光照效果. 支持不同的光源类型. 使用光源cookie. 计算顶点光照. 在光照计算中添加球面谐波 ...
- php的选择排序
往前. <?php /** * 选择排序 * 工作原理是每次从待排序的元素中的第一个元素设置为最小值, * 遍历每一个没有排序过的元素,如果元素小于现在的最小值, * 就将这个元素设置成为最小值 ...
- Alibaba Java Coding Guidelines,以后我的Java代码规范,就靠它了
前言 对于Java代码规范,业界有统一的标准,不少公司对此都有一定的要求.但是即便如此,庞大的Java使用者由于经验很水平的限制,未必有规范编码的意识,而且即便经验丰富的老Java程序员也无法做到时刻 ...
- Vcode的生成工具类,生成制定长度验证码,图文验证码工具类
public class VCodeUtils { // 使用到Algerian字体,系统里没有的话需要安装字体,字体只显示大写,去掉了1,0,i,o几个容易混淆的字符 public static f ...
- 百度UEditor添加视频 增加支持“通用代码”功能,支持微信
今天发现用UEditor默认的添加视频,在微信内置浏览器里无法正常显示.估计是微信屏蔽了UEditor使用的<embeded>标签.插入iframe形式的通用代码则能正常显示. 用百度UE ...
- 项目Beta冲刺--5/7
项目Beta冲刺--5/7 作业要求 这个作业属于哪个课程 软件工程1916-W(福州大学) 这个作业要求在哪里 项目Beta冲刺 团队名称 基于云的胜利冲锋队 项目名称 云评:高校学生成绩综合评估及 ...
- HDU - 6643: Ridiculous Netizens(点分治+依赖背包+空间优化)
题意:给定带点权的树,问多少个连通块,其乘积<=M; N<=2000,M<1e6; 思路:连通块-->分治: 由于普通的树DP在合并的时候复杂度会高一个M,所以用依赖背包来做. ...
- rsync+inotify百万级文件实时同步
实验环境:Centos7.4 目的:将源服务器的文件实时同步至目标服务器 源服务器:10.11.1.107 目标服务器:10.11.1.106 分别在两个节点安装rsync yum -y instal ...