前面我们在进行突变注释的时候,发现 VEP 安装非常麻烦,原始安装方法会出现各种 perl 模块缺失的问题,如果管理员权限,倒是可以用 docker 安装。现实情况是,大部分人是没有管理员权限的,所以我推荐自己购买一个云服务器。今天,给大家带来一种简便的 VEP 安装方法,就是对新手非常友好的 conda,从此不用再担心 perl 模块安装失败了。
参考:https://bioconda.github.io/recipes/ensembl-vep/README.html
下载安装
conda 的安装方法就不再介绍了,技能树已经发过非常多的教程了。我们直接安装 VEP ,为了不造成环境依赖相冲突,可以新建一个小环境,然后在小环境中安装 VEP
conda create -n vep
conda activate vep
conda install ensembl-vep
检查软件是否下载成功的最简单方法是调用帮助文档:
$ vep --help
#----------------------------------#
# ENSEMBL VARIANT EFFECT PREDICTOR #
#----------------------------------#
Versions:
ensembl : 100.7e964b7
ensembl-funcgen : 100.f0c3948
ensembl-io : 100.f87ae4f
ensembl-variation : 100.1074e16
ensembl-vep : 100.1
Help: dev@ensembl.org , helpdesk@ensembl.org
Twitter: @ensembl
http://www.ensembl.org/info/docs/tools/vep/script/index.html
Usage:
./vep [--cache|--offline|--database] [arguments]
Basic options
=============
--help Display this message and quit
-i | --input_file Input file
-o | --output_file Output file
--force_overwrite Force overwriting of output file
--species [species] Species to use [default: "human"]
--everything Shortcut switch to turn on commonly used options. See web
documentation for details [default: off]
--fork [num_forks] Use forking to improve script runtime
For full option documentation see:
http://www.ensembl.org/info/docs/tools/vep/script/vep_options.html
我下载的时候默认就是最新版:ensembl-vep-100.(截止2020-05-25),如果之前安装过了旧版,也可以用下面方法更新(不建议随便更新):
conda update ensembl-vep
不管是使用什么安装方法,都需要下载数据库的基因组注释文件,比如人类 GRCh38,需要注意的是,如果是用原始的安装方法(非conda)下载数据的命令是 INSTALL.pl ,而在这里已经改为了 vep_install。另一个需要注意的细节是,数据库注释文件要与软件版本保持一致。不过数据库注释文件非常大,光这个 GRCh38 版本的人类基因组注释文件就要 14 G,还是压缩版本的。
mkdir ~/wes_cancer/data/vep
vep_install -a cf -s homo_sapiens -y GRCh38 -c ~/wes_cancer/data/vep –CONVERT
# 也可以自行下来解压,比如:
cd ~/wes_cancer/data/vep
curl -O ftp://ftp.ensembl.org/pub/release-100/variation/indexed_vep_cache/homo_sapiens_vep_100_GRCh38.tar.gz
tar -zxvf homo_sapiens_vep_100_GRCh38.tar.gz
# 解压后生成文件夹,里面有大量的注释文件
ls homo_sapiens/100_GRCh38/ | head
1
10
11
12
13
14
15
16
17
18
官网建议,注释文件要与软件版本号对应,比如这里用的是 ensembl-vep-100,注释信息包含了以下:
Source | Version (GRCh38) | Version (GRCh37) |
---|---|---|
Ensembl database version | 100 | 100 |
Genome assembly | GRCh38.p13 | GRCh37.p13 |
GENCODE | 33 | 19 |
RefSeq | 2019-06-28 (GCF_000001405.39_GRCh38.p13_genomic.gff) | 2019-11-01 (GCF_000001405.25_GRCh37.p13_genomic.gff) |
Regulatory build | 1.0 | 1.0 |
PolyPhen | 2.2.2 | 2.2.2 |
SIFT | 5.2.2 | 5.2.2 |
dbSNP | 153 | 153 |
COSMIC | 90 | 90 |
HGMD-PUBLIC | 2018.4 | 2017.4 |
ClinVar | 2019-12 | 2019-12 |
1000 Genomes | Phase 3 (remapped) | Phase 3 |
NHLBI-ESP | V2-SSA137 (remapped) | V2-SSA137 |
gnomAD | r2.1, exomes only (remapped) | r2.1, exomes only |
注释
首先要理解参数,看官网就好 http://asia.ensembl.org/info/docs/tools/vep/script/vep_options.html#opt_genomes,这里用到了几个参数:
参数 | 意义 | 备注 |
---|---|---|
--species homo_sapiens | 指定物种 | |
-cache | 使用缓存数据 | |
--dir ~/wes_cancer/data/vep | 指定缓存数据所在的路径 | |
--clin_sig_allele 0 | 0 为返回等位基因的具体临床意义,1 则不返回 | |
--af | 注释上千人基因组的等位基因频率,在输出信息中添加了 AF | 类似的参数还有--af_gnomad,--af_exac等 |
--stats_text --stats_file output_vep_summary.html | 输出统计报告,为 html 格式 |
一个 327 个位点的 vcf 文件运行时间约3分钟,代码和结果如下:
vep --cache --everything \
--species homo_sapiens \
--cache \
--dir ~/wes_cancer/data/vep \
--clin_sig_allele 0 \
--af --af_gnomad --af_exac \
--fasta ~/wes_cancer/data/Homo_sapiens_assembly38.fasta \
--stats_text --stats_file 7.annotation/vep/case1_biorep_A_techrep_vep_summary.html \
-i 6.mutect/case1_biorep_A_techrep_filter.vcf \
--vcf \
-o 7.annotation/vep/case1_biorep_A_techrep_vep_tmp.vcf
$ less 7.annotation/vep/case1_biorep_A_techrep_vep_tmp.vcf | grep -v '##' | head -10
#CHROM POS ID REF ALT QUAL FILTER INFO FORMAT case1_biorep_A_techrep case1_germline
chr1 6146376 . G T . PASS CONTQ=93;DP=205;ECNT=1;GERMQ=93;MBQ=31,38;MFRL=146,210;MMQ=60,60;MPOS=29;NALOD=1.89;NLOD=22.56;POPAF=6.00;SEQQ=12;STRANDQ=6;TLOD=5.40;CSQ=T|missense_variant|MODERATE|CHD5|ENSG00000116254|Transcript|ENST00000262450|protein_coding|11/42||ENST00000262450.8:c.1638C>A|ENSP00000262450.3:p.Asn546Lys|1936|1638|546|N/K|aaC/aaA|rs1041067908||-1||SNV|HGNC|HGNC:16816|YES|NM_015557.3|1|P1|CCDS57.1|ENSP00000262450|Q8TDI0||UPI000006CD03||tolerated(0.06)|benign(0.353)|Gene3D:2.40.50.40&PROSITE_profiles:PS50013&PANTHER:PTHR45623&PANTHER:PTHR45623:SF6&SMART:SM00298&Superfamily:SSF54160||||||||||||||||||||3.978e-06|0|0|0|0|0|8.793e-06|0|0|8.793e-06|gnomAD_NFE||||||||,T|upstream_gene_variant|MODIFIER|CHD5|ENSG00000116254|Transcript|ENST00000462991|nonsense_mediated_decay||||||||||rs1041067908|2272|-1|cds_start_NF|SNV|HGNC|HGNC:16816|||1|||ENSP00000466706||K7EMY3|UPI0002841241||||||||||||||||||||||||3.978e-06|0|0|0|0|0|8.793e-06|0|0|8.793e-06|gnomAD_NFE||||||||,T|missense_variant&NMD_transcript_variant|MODERATE|CHD5|ENSG00000116254|Transcript|ENST00000496404|nonsense_mediated_decay|11/34||ENST00000496404.1:c.1638C>A|ENSP00000433676.1:p.Asn546Lys|1638|1638|546|N/K|aaC/aaA|rs1041067908||-1||SNV|HGNC|HGNC:16816|||2|||ENSP00000433676||F2Z2R5|UPI0000470971||tolerated(0.08)|possibly_damaging(0.828)|||||||||||||||||||||3.978e-06|0|0|0|0|0|8.793e-06|0|0|8.793e-06|gnomAD_NFE|||||||| GT:AD:AF:DP:F1R2:F2R1:SB 0/1:108,3:0.039:111:52,1:55,2:40,68,2,1 0/0:85,0:0.013:85:50,0:34,0:33,52,0,0
chr1 6461445 . G T . PASS CONTQ=93;DP=22;ECNT=1;GERMQ=28;MBQ=25,39;MFRL=170,184;MMQ=60,60;MPOS=14;NALOD=1.05;NLOD=2.70;POPAF=6.00;SEQQ=8;STRANDQ=10;TLOD=6.33;CSQ=T|downstream_gene_variant|MODIFIER|PLEKHG5|ENSG00000171680|Transcript|ENST00000340850|protein_coding|||||||||||4647|-1||SNV|HGNC|HGNC:29105|||5|P3|CCDS79.1|ENSP00000344570|O94827||UPI000015F97E|1|||||||||||||||||||||||||||||||||||||||||,T|missense_variant|MODERATE|TNFRSF25|ENSG00000215788|Transcript|ENST00000348333|protein_coding|9/9||ENST00000348333.7:c.1108C>A|ENSP00000314451.3:p.Arg370Ser|1108|