Mercurial > repos > saskia-hiltemann > annovar
changeset 2:565c0e690238 draft
Added support for LJB2, COSMIC67, CLINVAR and NCI60.
Fixed dgv annotation to use new UCSC table dgvMerged instead.
author | saskia-hiltemann |
---|---|
date | Mon, 18 Nov 2013 10:32:33 -0500 |
parents | 7d9353127f8a |
children | ff5325029a8e |
files | README README~ tool-data/annovar.loc.sample tools/annovar/annovar.sh tools/annovar/annovar.xml |
diffstat | 5 files changed, 507 insertions(+), 277 deletions(-) [+] |
line wrap: on
line diff
--- a/README Tue Nov 05 07:16:32 2013 -0500 +++ b/README Mon Nov 18 10:32:33 2013 -0500 @@ -33,181 +33,210 @@ list of files in my own humandb folder: - hg18_ALL.sites.2012_04.txt - hg18_ALL.sites.2012_04.txt.idx - hg18_avsift.txt - hg18_avsift.txt.idx - hg18_CEU.sites.2010_07.txt - hg18_CEU.sites.2010_07.txt.idx - hg18_cg46.txt - hg18_cg46.txt.idx - hg18_cg69.txt - hg18_cg69.txt.idx - hg18_cytoBand.txt - hg18_dgv.txt - hg18_ensGeneMrna.fa - hg18_ensGene.txt - hg18_esp5400_aa.txt - hg18_esp5400_aa.txt.idx - hg18_esp5400_all.txt - hg18_esp5400_all.txt.idx - hg18_esp5400_ea.txt - hg18_esp5400_ea.txt.idx - hg18_esp6500_aa.txt - hg18_esp6500_aa.txt.idx - hg18_esp6500_all.txt - hg18_esp6500_all.txt.idx - hg18_esp6500_ea.txt - hg18_esp6500_ea.txt.idx - hg18_esp6500si_aa.txt - hg18_esp6500si_aa.txt.idx - hg18_esp6500si_all.txt - hg18_esp6500si_all.txt.idx - hg18_esp6500si_ea.txt - hg18_esp6500si_ea.txt.idx - hg18_example_db_generic.txt - hg18_example_db_gff3.txt - hg18_genomicSuperDups.txt - hg18_gerp++gt2.txt - hg18_gerp++gt2.txt.idx - hg18_gwasCatalog.txt - hg18_JPTCHB.sites.2010_07.txt - hg18_JPTCHB.sites.2010_07.txt.idx - hg18_keggMapDesc.txt - hg18_keggPathway.txt - hg18_kgXref.txt - hg18_knownGeneMrna.fa - hg18_knownGene.txt - hg18_ljb_all.txt - hg18_ljb_all.txt.idx - hg18_ljb_lrt.txt - hg18_ljb_lrt.txt.idx - hg18_ljb_mt.txt - hg18_ljb_mt.txt.idx - hg18_ljb_phylop.txt - hg18_ljb_phylop.txt.idx - hg18_ljb_pp2.txt - hg18_ljb_pp2.txt.idx - hg18_ljb_sift.txt - hg18_ljb_sift.txt.idx - hg18_phastConsElements44way.txt - hg18_refGeneMrna.fa - hg18_refGene.txt - hg18_refLink.txt - hg18_snp128NonFlagged.txt - hg18_snp128NonFlagged.txt.idx - hg18_snp128.txt - hg18_snp128.txt.idx - hg18_snp129NonFlagged.txt - hg18_snp129NonFlagged.txt.idx - hg18_snp129.txt - hg18_snp129.txt.idx - hg18_snp130NonFlagged.txt - hg18_snp130NonFlagged.txt.idx - hg18_snp130.txt - hg18_snp130.txt.idx - hg18_snp131NonFlagged.txt - hg18_snp131NonFlagged.txt.idx - hg18_snp131.txt - hg18_snp131.txt.idx - hg18_snp132NonFlagged.txt - hg18_snp132NonFlagged.txt.idx - hg18_snp132.txt - hg18_snp132.txt.idx - hg18_tfbsConsSites.txt - hg18_YRI.sites.2010_07.txt - hg18_YRI.sites.2010_07.txt.idx - hg19_AFR.sites.2012_04.txt - hg19_AFR.sites.2012_04.txt.idx - hg19_ALL.sites.2010_11.txt - hg19_ALL.sites.2010_11.txt.idx - hg19_ALL.sites.2012_02.txt - hg19_ALL.sites.2012_02.txt.idx - hg19_ALL.sites.2012_04.txt - hg19_ALL.sites.2012_04.txt.idx - hg19_AMR.sites.2012_04.txt - hg19_AMR.sites.2012_04.txt.idx - hg19_ASN.sites.2012_04.txt - hg19_ASN.sites.2012_04.txt.idx - hg19_avsift.txt - hg19_avsift.txt.idx - hg19_cg46.txt - hg19_cg46.txt.idx - hg19_cg69.txt - hg19_cg69.txt.idx - hg19_cosmic61.txt - hg19_cosmic61.txt.idx - hg19_cosmic63.txt - hg19_cosmic63.txt.idx - hg19_cosmic64.txt - hg19_cosmic64.txt.idx - hg19_cosmic65.txt - hg19_cosmic65.txt.idx - hg19_cytoBand.txt - hg19_dgv.txt - hg19_ensGeneMrna.fa - hg19_ensGene.txt - hg19_esp5400_aa.txt - hg19_esp5400_aa.txt.idx - hg19_esp5400_all.txt - hg19_esp5400_all.txt.idx - hg19_esp5400_ea.txt - hg19_esp5400_ea.txt.idx - hg19_esp6500_aa.txt - hg19_esp6500_aa.txt.idx - hg19_esp6500_all.txt - hg19_esp6500_all.txt.idx - hg19_esp6500_ea.txt - hg19_esp6500_ea.txt.idx - hg19_esp6500si_aa.txt - hg19_esp6500si_aa.txt.idx - hg19_esp6500si_all.txt - hg19_esp6500si_all.txt.idx - hg19_esp6500si_ea.txt - hg19_esp6500si_ea.txt.idx - hg19_EUR.sites.2012_04.txt - hg19_EUR.sites.2012_04.txt.idx - hg19_genomicSuperDups.txt - hg19_gerp++gt2.txt - hg19_gerp++gt2.txt.idx - hg19_gwasCatalog.txt - hg19_keggMapDesc.txt - hg19_keggPathway.txt - hg19_kgXref.txt - hg19_knownGeneMrna.fa - hg19_knownGene.txt - hg19_ljb_all.txt - hg19_ljb_all.txt.idx - hg19_ljb_lrt.txt - hg19_ljb_lrt.txt.idx - hg19_ljb_mt.txt - hg19_ljb_mt.txt.idx - hg19_ljb_phylop.txt - hg19_ljb_phylop.txt.idx - hg19_ljb_pp2.txt - hg19_ljb_pp2.txt.idx - hg19_ljb_sift.txt - hg19_ljb_sift.txt.idx - hg19_phastConsElements46way.txt - hg19_refGeneMrna.fa - hg19_refGene.txt - hg19_refLink.txt - hg19_snp130NonFlagged.txt - hg19_snp130NonFlagged.txt.idx - hg19_snp130.txt - hg19_snp130.txt.idx - hg19_snp131NonFlagged.txt - hg19_snp131NonFlagged.txt.idx - hg19_snp131.txt - hg19_snp132NonFlagged.txt - hg19_snp132NonFlagged.txt.idx - hg19_snp132.txt - hg19_snp132.txt.idx - hg19_snp135NonFlagged.txt - hg19_snp135NonFlagged.txt.idx - hg19_snp135.txt - hg19_snp137NonFlagged.txt - hg19_snp137NonFlagged.txt.idx - hg19_snp137.txt - hg19_tfbsConsSites.txt +hg18_ALL.sites.2012_04.txt +hg18_ALL.sites.2012_04.txt.idx +hg18_CEU.sites.2010_07.txt +hg18_CEU.sites.2010_07.txt.idx +hg18_JPTCHB.sites.2010_07.txt +hg18_JPTCHB.sites.2010_07.txt.idx +hg18_YRI.sites.2010_07.txt +hg18_YRI.sites.2010_07.txt.idx +hg18_cg46.txt +hg18_cg46.txt.idx +hg18_cg69.txt +hg18_cg69.txt.idx +hg18_cytoBand.txt +hg18_dgvMerged.txt +hg18_ensGene.txt +hg18_ensGeneMrna.fa +hg18_esp5400_aa.txt +hg18_esp5400_aa.txt.idx +hg18_esp5400_all.txt +hg18_esp5400_all.txt.idx +hg18_esp6500_aa.txt +hg18_esp6500_aa.txt.idx +hg18_esp6500_all.txt +hg18_esp6500_all.txt.idx +hg18_esp6500_ea.txt +hg18_esp6500_ea.txt.idx +hg18_esp6500si_aa.txt +hg18_esp6500si_aa.txt.idx +hg18_esp6500si_all.txt +hg18_esp6500si_all.txt.idx +hg18_esp6500si_ea.txt +hg18_esp6500si_ea.txt.idx +hg18_example_db_generic.txt +hg18_example_db_gff3.txt +hg18_genomicSuperDups.txt +hg18_gerp++gt2.txt +hg18_gerp++gt2.txt.idx +hg18_gwasCatalog.txt +hg18_kgXref.txt +hg18_knownGene.txt +hg18_knownGeneMrna.fa +hg18_ljb2_fathmm.txt +hg18_ljb2_fathmm.txt.idx +hg18_ljb2_gerp++.txt +hg18_ljb2_gerp++.txt.idx +hg18_ljb2_ma.txt +hg18_ljb2_ma.txt.idx +hg18_ljb2_mt.txt +hg18_ljb2_mt.txt.idx +hg18_ljb2_phylop.txt +hg18_ljb2_phylop.txt.idx +hg18_ljb2_pp2hdiv.txt +hg18_ljb2_pp2hdiv.txt.idx +hg18_ljb2_pp2hvar.txt +hg18_ljb2_pp2hvar.txt.idx +hg18_ljb2_sift.txt +hg18_ljb2_sift.txt.idx +hg18_ljb2_siphy.txt +hg18_ljb2_siphy.txt.idx +hg18_phastConsElements44way.txt +hg18_refGene.txt +hg18_refGeneMrna.fa +hg18_refLink.txt +hg18_snp128.txt +hg18_snp128.txt.idx +hg18_snp128NonFlagged.txt +hg18_snp128NonFlagged.txt.idx +hg18_snp129.txt +hg18_snp129.txt.idx +hg18_snp129NonFlagged.txt +hg18_snp129NonFlagged.txt.idx +hg18_snp130.txt +hg18_snp130.txt.idx +hg18_snp130NonFlagged.txt +hg18_snp130NonFlagged.txt.idx +hg18_snp131.txt +hg18_snp131.txt.idx +hg18_snp131NonFlagged.txt +hg18_snp131NonFlagged.txt.idx +hg18_snp132.txt +hg18_snp132.txt.idx +hg18_snp132NonFlagged.txt +hg18_snp132NonFlagged.txt.idx +hg18_tfbsConsSites.txt +hg19_AFR.sites.2012_04.txt +hg19_AFR.sites.2012_04.txt.idx +hg19_ALL.sites.2010_11.txt +hg19_ALL.sites.2010_11.txt.idx +hg19_ALL.sites.2012_02.txt +hg19_ALL.sites.2012_02.txt.idx +hg19_ALL.sites.2012_04.txt +hg19_ALL.sites.2012_04.txt.idx +hg19_AMR.sites.2012_04.txt +hg19_AMR.sites.2012_04.txt.idx +hg19_ASN.sites.2012_04.txt +hg19_ASN.sites.2012_04.txt.idx +hg19_EUR.sites.2012_04.txt +hg19_EUR.sites.2012_04.txt.idx +hg19_avsift.txt +hg19_avsift.txt.idx +hg19_cg46.txt +hg19_cg46.txt.idx +hg19_cg69.txt +hg19_cg69.txt.idx +hg19_clinvar_20131105.txt +hg19_clinvar_20131105.txt.idx +hg19_cosmic61.txt +hg19_cosmic61.txt.idx +hg19_cosmic63.txt +hg19_cosmic63.txt.idx +hg19_cosmic64.txt +hg19_cosmic64.txt.idx +hg19_cosmic65.txt +hg19_cosmic65.txt.idx +hg19_cosmic67.txt +hg19_cytoBand.txt +hg19_dgvMerged.txt +hg19_ensGene.txt +hg19_ensGeneMrna.fa +hg19_esp5400_aa.txt +hg19_esp5400_aa.txt.idx +hg19_esp5400_all.txt +hg19_esp5400_all.txt.idx +hg19_esp6500_aa.txt +hg19_esp6500_aa.txt.idx +hg19_esp6500_all.txt +hg19_esp6500_all.txt.idx +hg19_esp6500_ea.txt +hg19_esp6500_ea.txt.idx +hg19_esp6500si_aa.txt +hg19_esp6500si_aa.txt.idx +hg19_esp6500si_all.txt +hg19_esp6500si_all.txt.idx +hg19_esp6500si_ea.txt +hg19_esp6500si_ea.txt.idx +hg19_genomicSuperDups.txt +hg19_gerp++gt2.txt +hg19_gerp++gt2.txt.idx +hg19_gwasCatalog.txt +hg19_kgXref.txt +hg19_knownGene.txt +hg19_knownGeneMrna.fa +hg19_ljb2_fathmm.txt +hg19_ljb2_fathmm.txt.idx +hg19_ljb2_gerp++.txt +hg19_ljb2_gerp++.txt.idx +hg19_ljb2_ma.txt +hg19_ljb2_ma.txt.idx +hg19_ljb2_mt.txt +hg19_ljb2_phylop.txt +hg19_ljb2_phylop.txt.idx +hg19_ljb2_pp2hdiv.txt +hg19_ljb2_pp2hdiv.txt.idx +hg19_ljb2_pp2hvar.txt +hg19_ljb2_pp2hvar.txt.idx +hg19_ljb2_sift.txt +hg19_ljb2_sift.txt.idx +hg19_ljb2_siphy.txt +hg19_nci60.txt +hg19_nci60.txt.idx +hg19_phastConsElements46way.txt +hg19_refGene.txt +hg19_refGeneMrna.fa +hg19_refLink.txt +hg19_snp130.txt +hg19_snp130.txt.idx +hg19_snp130NonFlagged.txt +hg19_snp130NonFlagged.txt.idx +hg19_snp131.txt +hg19_snp131NonFlagged.txt +hg19_snp131NonFlagged.txt.idx +hg19_snp132.txt +hg19_snp132.txt.idx +hg19_snp132NonFlagged.txt +hg19_snp132NonFlagged.txt.idx +hg19_snp135.txt +hg19_snp135NonFlagged.txt +hg19_snp135NonFlagged.txt.idx +hg19_snp137.txt +hg19_snp137NonFlagged.txt +hg19_snp137NonFlagged.txt.idx +hg19_tfbsConsSites.txt + +obsolete functional impact database files: (disabled by default) +hg18_avsift.txt +hg18_avsift.txt.idx +hg19_ljb_all.txt +hg19_ljb_all.txt.idx +hg19_ljb_lrt.txt +hg19_ljb_lrt.txt.idx +hg19_ljb_mt.txt +hg19_ljb_mt.txt.idx +hg19_ljb_phylop.txt +hg19_ljb_phylop.txt.idx +hg19_ljb_pp2.txt +hg19_ljb_pp2.txt.idx +hg18_ljb_all.txt +hg18_ljb_all.txt.idx +hg18_ljb_lrt.txt +hg18_ljb_lrt.txt.idx +hg18_ljb_mt.txt +hg18_ljb_mt.txt.idx +hg18_ljb_phylop.txt +hg18_ljb_phylop.txt.idx +hg18_ljb_pp2.txt +hg18_ljb_pp2.txt.idx
--- a/README~ Tue Nov 05 07:16:32 2013 -0500 +++ b/README~ Mon Nov 18 10:32:33 2013 -0500 @@ -141,6 +141,8 @@ hg19_cosmic63.txt.idx hg19_cosmic64.txt hg19_cosmic64.txt.idx + hg19_cosmic65.txt + hg19_cosmic65.txt.idx hg19_cytoBand.txt hg19_dgv.txt hg19_ensGeneMrna.fa
--- a/tool-data/annovar.loc.sample Tue Nov 05 07:16:32 2013 -0500 +++ b/tool-data/annovar.loc.sample Mon Nov 18 10:32:33 2013 -0500 @@ -2,5 +2,5 @@ # # <columns>value, dbkey, name, ANNOVAR_scripts, ANNOVAR_humandb</columns> -hg18 hg18 build 36 (hg18) /path/to/annovarscripts /path/to/humandb -hg19 hg19 build 37 (hg19) /path/to/annovarscripts /path/to/humandb +#hg18 hg18 hg18 [Human Mar. 2006 (NCBI36/hg18)] /path/to/annovarscripts /path/to/humandb +#hg19 hg19 hg19 [Human Feb. 2009 (GRCh37/hg19)] /path/to/annovarscripts /path/to/humandb
--- a/tools/annovar/annovar.sh Tue Nov 05 07:16:32 2013 -0500 +++ b/tools/annovar/annovar.sh Mon Nov 18 10:32:33 2013 -0500 @@ -1,7 +1,12 @@ #!/bin/bash test="N" +dofilter="N" +######################### +# DEFINE SOME +# FUNCTIONS +######################### function usage(){ echo "usage: $0 todo" @@ -167,7 +172,14 @@ -set -- `getopt -n$0 -u -a --longoptions="inputfile: buildver: humandb: varfile: VCF: chrcol: startcol: endcol: refcol: obscol: vartypecol: convertcoords: geneanno: verdbsnp: tfbs: mce: cytoband: segdup: dgv: gwas: ver1000g: cg46: cg69: impactscores: esp: gerp: cosmic61: cosmic63: cosmic64: cosmic65: outall: outfilt: outinvalid: scriptsdir: dorunannovar: dofilter: filt_dbsnp: filt1000GALL: filt1000GAFR: filt1000GAMR: filt1000GASN: filt1000GEUR: filtESP6500ALL: filtESP6500EA: filtESP6500AA: filtcg46: filtcg69: dummy:" "h:" "$@"` || usage +################################# +# +# PARSE PARAMETERS +# +################################# + + +set -- `getopt -n$0 -u -a --longoptions="inputfile: buildver: humandb: varfile: VCF: chrcol: startcol: endcol: refcol: obscol: vartypecol: convertcoords: geneanno: hgvs: verdbsnp: tfbs: mce: cytoband: segdup: dgv: gwas: ver1000g: cg46: cg69: impactscores: newimpactscores: otherinfo: esp: gerp: cosmic61: cosmic63: cosmic64: cosmic65: cosmic67: clinvar: nci60: outall: outfilt: outinvalid: scriptsdir: dorunannovar: dofilter: filt_dbsnp: filt1000GALL: filt1000GAFR: filt1000GAMR: filt1000GASN: filt1000GEUR: filtESP6500ALL: filtESP6500EA: filtESP6500AA: filtcg46: filtcg69: dummy:" "h:" "$@"` || usage [ $# -eq 0 ] && usage @@ -176,8 +188,8 @@ do case "$1" in --inputfile) infile=$2;shift;; # inputfile - --buildver) buildver=$2;shift;; # hg18 or hg19 - --humandb) humandb=$2;shift;; # location of humandb database + --buildver) buildvertmp=$2;shift;; # hg18 or hg19 + --humandb) humandbtmp=$2;shift;; # location of humandb database --varfile) varfile=$2;shift;; # Y or N --VCF) vcf=$2;shift;; #Y or N --chrcol) chrcol=$2;shift;; # which column has chr @@ -188,6 +200,7 @@ --vartypecol) vartypecol=$2;shift;; # which column has vartype --convertcoords) convertcoords=$2;shift;; # Y or N convert coordinate from CG to 1-based? --geneanno) geneanno=$2;shift;; # comma-separated list of strings refSeq, knowngene, ensgene + --hgvs) hgvs=$2;shift;; --verdbsnp) verdbsnp=$2;shift;; #comma-separated list of dbsnp version to annotate with (e.g. "132,135NonFlagged,137")" --tfbs) tfbs=$2;shift;; # Y or N --mce) mce=$2;shift;; # Y or N @@ -199,13 +212,18 @@ --cg46) cg46=$2;shift;; --cg69) cg69=$2;shift;; --impactscores) impactscores=$2;shift;; # Y or N - --scriptsdir) scriptsdir=$2;shift;; # Y or N + --newimpactscores) newimpactscores=$2;shift;; # Y or N + --otherinfo) otherinfo=$2;shift;; + --scriptsdir) scriptsdirtmp=$2;shift;; # Y or N --esp) esp=$2;shift;; # Y or N --gerp) gerp=$2;shift;; # Y or N --cosmic61) cosmic61=$2;shift;; # Y or N --cosmic63) cosmic63=$2;shift;; # Y or N --cosmic64) cosmic64=$2;shift;; # Y or N --cosmic65) cosmic65=$2;shift;; # Y or N + --cosmic67) cosmic67=$2;shift;; # Y or N + --nci60) nci60=$2;shift;; # Y or N + --clinvar) clinvar=$2;shift;; # Y or N --filt_dbsnp) filt_dbsnp=$2;shift;; --filt1000GALL) threshold_1000g_ALL=$2;shift;; #threshold value --filt1000GAFR) threshold_1000g_AFR=$2;shift;; #threshold value @@ -220,8 +238,7 @@ --outall) outfile_all=$2;shift;; # file --outfilt) outfile_filt=$2;shift;; # file --outinvalid) outfile_invalid=$2;shift;; #file - --dorunannovar) dorunannovar=$2;shift;; #Y or N - --dofilter) dofilter=$2;shift;; #Y or N + --dorunannovar) dorunannovar=$2;shift;; #Y or N -h) shift;; --) shift;break;; -*) usage;; @@ -230,6 +247,11 @@ shift done +#sometimes galaxy screws up these variables after updates, if comma-separated list, use only what is before first comma +humandb=${humandbtmp%,*} +buildver=${buildvertmp%,*} +scriptsdir=${scriptsdirtmp%,*} + if [ $test == "Y" ] then @@ -249,6 +271,7 @@ echo "cg46: ${cg46}" echo "cg69: ${cg69}" echo "impactscores: $impactscores" + echo "impactscores: $newimpactscores" echo "esp: $esp" echo "gerp: $gerp" echo "cosmic: $cosmic" @@ -277,10 +300,18 @@ fi + +############################################ +# +# Annotate Variants +# +############################################ + +#parse geneanno param refgene="N" knowngene="N" ensgene="N" -#parse geneanno param + if [[ $geneanno =~ "refSeq" ]] then refgene="Y" @@ -293,7 +324,10 @@ then ensgene="Y" fi - +if [ $hgvs == "N" ] +then + hgvs="" +fi #parse verdbsnp/1000g/esp strings dbsnpstr=${verdbsnp//,/ } @@ -314,7 +348,8 @@ polyphen2="N" phylop="N" ljbsift="N" -#parse impactscores param + +#parse old impactscores param (obsolete) if [[ $impactscores =~ "mutationtaster" ]] then mutationtaster="Y" @@ -331,6 +366,10 @@ then ljbsift="Y" fi +if [[ $impactscores =~ "ljb2sift" ]] +then + ljb2sift="Y" +fi if [[ $impactscores =~ "pp2" ]] then polyphen2="Y" @@ -347,6 +386,65 @@ #ljb refers to Liu, Jian, Boerwinkle paper in Human Mutation with pubmed ID 21520341. Cite this paper if you use the scores +ljb2_sift="N" +ljb2_pp2hdiv="N" +ljb2_pp2hvar="N" +ljb2_lrt="N" +ljb2_mt="N" +ljb2_ma="N" +ljb2_fathmm="N" +ljb2_gerp="N" +ljb2_phylop="N" +ljb2_siphy="N" + +# parse ljb2 newimpactscores param +# ljb2_sift, ljb2_pp2hdiv, ljb2_pp2hvar, ljb2_lrt, ljb2_mt, ljb2_ma, ljb2_fathmm, ljb2_gerp++, ljb2_phylop, ljb2_siphy +if [[ $newimpactscores =~ "ljb2_sift" ]] +then + ljb2_sift="Y" +fi +if [[ $newimpactscores =~ "ljb2_pp2hdiv" ]] +then + ljb2_pp2hdiv="Y" +fi +if [[ $newimpactscores =~ "ljb2_pp2hvar" ]] +then + ljb2_pp2hvar="Y" +fi +if [[ $newimpactscores =~ "ljb2_lrt" ]] +then + ljb2_lrt="Y" +fi +if [[ $newimpactscores =~ "ljb2_mt" ]] +then + ljb2_mt="Y" +fi +if [[ $newimpactscores =~ "ljb2_ma" ]] +then + ljb2_ma="Y" +fi +if [[ $newimpactscores =~ "ljb2_fathmm" ]] +then + ljb2_fathmm="Y" +fi +if [[ $newimpactscores =~ "ljb2_gerp" ]] +then + ljb2_gerp="Y" +fi +if [[ $newimpactscores =~ "ljb2_phylop" ]] +then + ljb2_phylop="Y" +fi +if [[ $newimpactscores =~ "ljb2_siphy" ]] +then + ljb2_siphy="Y" +fi + +if [ $otherinfo == "N" ] +then + otherinfo="" +fi + #column header names we will be adding # ESP 6500 @@ -498,7 +596,7 @@ if [ $refgene == "Y" ] then echo -e "\nrefSeq gene" - $scriptsdir/annotate_variation.pl --geneanno --buildver $buildver -dbtype gene annovarinput $humandb 2>&1 + $scriptsdir/annotate_variation.pl --geneanno --buildver $buildver -dbtype gene ${hgvs} annovarinput $humandb 2>&1 annovarout=annovarinput.variant_function sed -i '1i\RefSeq_Func\tRefSeq_Gene\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout @@ -612,9 +710,9 @@ if [ $dgv == "Y" ] then echo -e "\nDGV Annotation" - $scriptsdir/annotate_variation.pl --regionanno --buildver $buildver -dbtype dgv annovarinput $humandb 2>&1 + $scriptsdir/annotate_variation.pl --regionanno --buildver $buildver -dbtype dgvMerged annovarinput $humandb 2>&1 - annovarout=annovarinput.${buildver}_dgv + annovarout=annovarinput.${buildver}_dgvMerged sed -i '1i\db\tDGV\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout joinresults originalfile $annovarout 3 4 5 6 7 B.DGV fi @@ -807,6 +905,115 @@ fi + + + #### IMPACT SCORE ANNOTATIONS + + + if [ $ljb2_sift == "Y" ] + then + echo -e "\nLJB2 SIFT Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver $otherinfo -dbtype ljb2_sift annovarinput $humandb 2>&1 + + annovarout=annovarinput.${buildver}_ljb2_sift_dropped + sed -i '1i\db\tLJB2_SIFT\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.LJB2_SIFT + fi + + if [ $ljb2_pp2hdiv == "Y" ] + then + echo -e "\nLJB2 pp2hdiv Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver $otherinfo -dbtype ljb2_pp2hdiv annovarinput $humandb 2>&1 + + annovarout=annovarinput.${buildver}_ljb2_pp2hdiv_dropped + sed -i '1i\db\tLJB2_PolyPhen2_HDIV\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.LJB2_PolyPhen2_HDIV + fi + + if [ $ljb2_pp2hvar == "Y" ] + then + echo -e "\nLJB2 pp2hvar Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver $otherinfo -dbtype ljb2_pp2hvar annovarinput $humandb 2>&1 + + annovarout=annovarinput.${buildver}_ljb2_pp2hvar_dropped + sed -i '1i\db\tLJB2_PolyPhen2_HVAR\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.LJB2_PolyPhen2_HVAR + fi + + if [ $ljb2_lrt == "Y" ] + then + echo -e "\nLJB2 LRT Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver $otherinfo -dbtype ljb2_lrt annovarinput $humandb 2>&1 + + annovarout=annovarinput.${buildver}_ljb2_lrt_dropped + sed -i '1i\db\tLJB2_LRT\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.LJB2_LRT + fi + + if [ $ljb2_mt == "Y" ] + then + echo -e "\nLJB2 mutationtaster Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver $otherinfo -dbtype ljb2_mt annovarinput $humandb 2>&1 + + annovarout=annovarinput.${buildver}_ljb2_mt_dropped + sed -i '1i\db\tLJB2_MutationTaster\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.LJB2_MutationTaster + fi + + if [ $ljb2_ma == "Y" ] + then + echo -e "\nLJB2 mutationassessor Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver $otherinfo -dbtype ljb2_ma annovarinput $humandb 2>&1 + + annovarout=annovarinput.${buildver}_ljb2_ma_dropped + sed -i '1i\db\tLJB2_MutationAssessor\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.LJB2_MutationAssessor + fi + + if [ $ljb2_fathmm == "Y" ] + then + echo -e "\nLJB2 FATHMM Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver $otherinfo -dbtype ljb2_fathmm annovarinput $humandb 2>&1 + + annovarout=annovarinput.${buildver}_ljb2_fathmm_dropped + sed -i '1i\db\tLJB2_FATHMM\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.LJB2_FATHMM + fi + + if [ $ljb2_gerp == "Y" ] + then + echo -e "\nLJB2 GERP++ Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver $otherinfo -dbtype ljb2_gerp++ annovarinput $humandb 2>&1 + + annovarout=annovarinput.${buildver}_ljb2_gerp++_dropped + sed -i '1i\db\tLJB2_GERP++\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.LJB2_GERP++ + fi + + if [ $ljb2_phylop == "Y" ] + then + echo -e "\nLJB2 PhyloP Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver $otherinfo -dbtype ljb2_phylop annovarinput $humandb 2>&1 + + annovarout=annovarinput.${buildver}_ljb2_phylop_dropped + sed -i '1i\db\tLJB2_PhyloP\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.LJB2_PhyloP + fi + + if [ $ljb2_siphy == "Y" ] + then + echo -e "\nLJB2 SiPhy Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver $otherinfo -dbtype ljb2_siphy annovarinput $humandb 2>&1 + + annovarout=annovarinput.${buildver}_ljb2_siphy_dropped + sed -i '1i\db\tLJB2_SiPhy\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.LJB2_SiPhy + fi + + + + ### OLD IMPACT SCORE ANNOTATIONS + # SIFT if [ $avsift == "Y" ] then @@ -822,7 +1029,7 @@ # SIFT2 if [ $ljbsift == "Y" ] then - echo -e "\nSIFT Annotation" + echo -e "\nLJB SIFT Annotation" $scriptsdir/annotate_variation.pl --filter --buildver $buildver -dbtype ljb_sift annovarinput $humandb 2>&1 annovarout=annovarinput.${buildver}_ljb_sift_dropped @@ -984,35 +1191,6 @@ fi - #ESP6500 - if [ $esp == "Y" ] - then - echo -e "\nESP Annotation OLD" - # ALL - $scriptsdir/annotate_variation.pl --filter --buildver $buildver -dbtype esp6500si_all annovarinput $humandb 2>&1 - - annovarout=annovarinput.${buildver}_esp6500si_all_dropped - sed -i '1i\db\t'$esp6500_colheader_ALL'\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout - joinresults originalfile $annovarout 3 4 5 6 7 B.$esp6500_colheader_ALL - - - # European American - $scriptsdir/annotate_variation.pl --filter --buildver $buildver -dbtype esp6500si_ea annovarinput $humandb 2>&1 - - annovarout=annovarinput.${buildver}_esp6500si_ea_dropped - sed -i '1i\db\t'$esp6500_colheader_EA'\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout - joinresults originalfile $annovarout 3 4 5 6 7 B.$esp6500_colheader_EA - - # African Americans - $scriptsdir/annotate_variation.pl --filter --buildver $buildver -dbtype esp6500si_aa annovarinput $humandb 2>&1 - - annovarout=annovarinput.${buildver}_esp6500si_aa_dropped - sed -i '1i\db\t'$esp6500_colheader_AA'\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout - joinresults originalfile $annovarout 3 4 5 6 7 B.$esp6500_colheader_AA - fi - - - #GERP++ if [ $gerp == "Y" ] then @@ -1070,6 +1248,39 @@ fi + if [[ $cosmic67 == "Y" && $buildver == "hg19" ]] + then + echo -e "\nCOSMIC67 Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver -dbtype cosmic67 annovarinput $humandb 2>&1 + + annovarout="annovarinput.${buildver}_cosmic67_dropped" + sed -i '1i\db\tCOSMIC67\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.COSMIC67 + + fi + + if [[ $clinvar == "Y" && $buildver == "hg19" ]] + then + echo -e "\nCLINVAR Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver -dbtype clinvar_20131105 annovarinput $humandb 2>&1 + + annovarout="annovarinput.${buildver}_clinvar_20131105_dropped" + sed -i '1i\db\tCLINVAR\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.CLINVAR + + fi + + if [[ $nci60 == "Y" && $buildver == "hg19" ]] + then + echo -e "\nNCI60 Annotation" + $scriptsdir/annotate_variation.pl --filter --buildver $buildver -dbtype nci60 annovarinput $humandb 2>&1 + + annovarout="annovarinput.${buildver}_nci60_dropped" + sed -i '1i\db\tNCI60\tchromosome\tstart\tend\treference\talleleSeq"'"$vcfheader"'"' $annovarout + joinresults originalfile $annovarout 3 4 5 6 7 B.NCI60 + + fi + #cg46 if [[ $cg46 == "Y" ]] then @@ -1138,52 +1349,6 @@ -############################################ -# -# Filter Annotated Variants -# -############################################ - - -if [[ $dofilter == "Y" ]] -then - echo "starting filtering" - cp originalfile filteredfile - - ### do the filtering - # usage: runfilter <column name> <threshold> (-1=do not filter, 0=filter any value) - - #1000genomes - runfilter filteredfile ${g1000_colheader_ALL} ${threshold_1000g_ALL} - runfilter filteredfile ${g1000_colheader_AFR} ${threshold_1000g_AFR} - runfilter filteredfile ${g1000_colheader_AMR} ${threshold_1000g_AMR} - runfilter filteredfile ${g1000_colheader_ASN} ${threshold_1000g_ASN} - runfilter filteredfile ${g1000_colheader_EUR} ${threshold_1000g_EUR} - - #esp - runfilter filteredfile ${esp6500_colheader_ALL} ${threshold_ESP6500_ALL} - runfilter filteredfile ${esp6500_colheader_EA} ${threshold_ESP6500_EA} - runfilter filteredfile ${esp6500_colheader_AA} ${threshold_ESP6500_AA} - - #dbsnp - for version in $filt_dbsnpstr - do - if [ $version == "None" ] - then - break - fi - runfilter filteredfile "db$version" "text" #-42 will filter any non-empty string in that field - - done - - #complete genomics - runfilter filteredfile ${cg46_colheader} ${threshold_cg46} - runfilter filteredfile ${cg69_colheader} ${threshold_cg69} - - #move filtered output file to galaxy output file - cp filteredfile $outfile_filt - -fi @@ -1201,3 +1366,4 @@ +
--- a/tools/annovar/annovar.xml Tue Nov 05 07:16:32 2013 -0500 +++ b/tools/annovar/annovar.xml Mon Nov 18 10:32:33 2013 -0500 @@ -7,13 +7,13 @@ <command interpreter="bash"> annovar.sh - --impactscores ${impactscores} --esp ${esp} --gerp ${gerp} --cosmic61 ${cosmic61} --cosmic63 ${cosmic63} --cosmic64 ${cosmic64} - --cosmic65 ${cosmic65} + --cosmic65 ${cosmic65} + --cosmic67 ${cosmic67} --outall ${annotated} --outinvalid ${invalid} --dorunannovar ${dorun} @@ -57,6 +57,10 @@ --cg46 ${cgfortysix} --cg69 ${cgsixtynine} --ver1000g ${ver1000g} + --hgvs ${hgvs} + --otherinfo ${otherinfo} + --newimpactscores ${newimpactscores} + --clinvar ${clinvar} </command> @@ -98,7 +102,8 @@ <option value="knowngene"> UCSC KnownGene </option> <option value="ensgene" > Ensembl </option> </param> - + <param name="hgvs" type="boolean" checked="False" truevalue="-hgvs" falsevalue="N" label="Use HGVS nomenclature for RefSeq annotation" help="if checked, cDNA level annotation is compatible with HGVS"/> + <!-- region-based annotation --> <param name="cytoband" type="boolean" checked="False" truevalue="Y" falsevalue="N" label="Cytogenic band Annotation?" help="This option identifies Giemsa-stained chromosomes bands, (e.g. 1q21.1-q23.3)."/> @@ -154,14 +159,32 @@ <param name="gerp" type="boolean" checked="False" truevalue="Y" falsevalue="N" label="GERP++ Annotation?" help="GERP identifies constrained elements in multiple alignments by quantifying substitution deficits (see http://mendel.stanford.edu/SidowLab/downloads/gerp/ for details) This option annotates those variants having GERP++>2 in human genome, as this threshold is typically regarded as evolutionarily conserved and potentially functional"/> + <param name="clinvar" type="boolean" checked="False" truevalue="Y" falsevalue="N" label="CLINVAR Annotation? (hg19 only)" help="version 2013-11-05. Annotations include Variant Clinical Significance (unknown, untested, non-pathogenic, probable-non-pathogenic, probable-pathogenic, pathogenic, drug-response, histocompatibility, other) and Variant disease name."/> + <param name="nci60" type="boolean" checked="False" truevalue="Y" falsevalue="N" label="Annotate with NCI60? (hg19 only)" help="NCI-60 exome allele frequency data"/> <param name="cgfortysix" type="boolean" checked="False" truevalue="Y" falsevalue="N" label="Complete Genomics 46 Genomes?" help="Diversity Panel; 46 unrelated individuals"/> <param name="cgsixtynine" type="boolean" checked="False" truevalue="Y" falsevalue="N" label="Complete Genomics 69 Genomes?" help="Diversity Panel, Pedigree, YRI trio and PUR trio"/> <param name="cosmic61" type="boolean" checked="False" truevalue="Y" falsevalue="N" label="Annotate with COSMIC61? (hg19 only)"/> <param name="cosmic63" type="boolean" checked="False" truevalue="Y" falsevalue="N" label="Annotate with COSMIC63? (hg19 only)"/> <param name="cosmic64" type="boolean" checked="False" truevalue="Y" falsevalue="N" label="Annotate with COSMIC64? (hg19 only)"/> <param name="cosmic65" type="boolean" checked="False" truevalue="Y" falsevalue="N" label="Annotate with COSMIC65? (hg19 only)"/> + <param name="cosmic67" type="boolean" checked="False" truevalue="Y" falsevalue="N" label="Annotate with COSMIC67? (hg19 only)"/> -<param name="impactscores" type="select" label="Select functional impact scores annotate with" multiple="true" display="checkboxes" optional="true" help="LJB refers to Liu, Jian, Boerwinkle paper in Human Mutation, pubmed ID 21520341."> + <param name="newimpactscores" type="select" label="Select functional impact scores (LJB2)" multiple="true" display="checkboxes" optional="true" help="LJB refers to Liu, Jian, Boerwinkle paper in Human Mutation, pubmed ID 21520341. "> + <option value="ljb2_sift"> SIFT score </option> + <option value="ljb2_pp2hdiv"> PolyPhen2 HDIV score </option> + <option value="ljb2_pp2hvar" > PolyPhen2 HVAR score </option> + <option value="ljb2_mt" > MutationTaster score </option> + <option value="ljb2_ma" > MutationAssessor score </option> + <option value="ljb2_lrt"> LRT score (Likelihood Ratio Test) </option> + <option value="ljb2_phylop"> PhyloP score </option> + <option value="ljb2_fathmm" > FATHMM score </option> + <option value="ljb2_gerp"> GERP++ score </option> + <option value="ljb2_siphy"> SiPhy score </option> + </param> + <param name="otherinfo" type="boolean" checked="False" truevalue="-otherinfo" falsevalue="N" label="Also get predictions where possible?" help="e.g. annotated as -score,damaging- or -score,benign- instead of just score"/> + + <!-- OBSOLETE impact scores, uncomment for backwards compatibility, add argument impactscores to command +<param name="impactscores" type="select" label="Select functional impact scores annotate with (OBSOLETE)" multiple="true" display="checkboxes" optional="true" help="LJB refers to Liu, Jian, Boerwinkle paper in Human Mutation, pubmed ID 21520341."> <option value="avsift"> AV SIFT </option> <option value="ljbsift"> LJB SIFT (corresponds to 1-SIFT)</option> <option value="pp2"> PolyPhen2 </option> @@ -169,7 +192,7 @@ <option value="lrt"> LRT (Likelihood Ratio Test) </option> <option value="phylop"> PhyloP </option> </param> - + --> <!-- prefix for output file so you dont have to manually rename history items --> <param name="fname" type="text" value="" label="Prefix for your output file" help="Optional"/> @@ -196,13 +219,23 @@ Input Formats may be one of the following: - VCF file - - Complete Genomics varfile +VCF file +Complete Genomics varfile + +Custom tab-delimited file (specify chromosome, start, end, reference allele, observed allele columns) - Custom tab-delimited file (specify chromosome, start, end, reference allele, observed allele columns) +Custom tab-delimited CG-derived file (specify chromosome, start, end, reference allele, observed allele, varType columns) + + +**Database Notes** - Custom tab-delimited CG-derived file (specify chromosome, start, end, reference allele, observed allele, varType columns) +see ANNOVAR website for extensive documentation, a few notes on some of the databases: + +**LJB2 Database** + +PolyPhen2 HVAR should be used for diagnostics of Mendelian diseases, which requires distinguishing mutations with drastic effects from all the remaining human variation, including abundant mildly deleterious alleles.The authors recommend calling probably damaging if the score is between 0.909 and 1, and possibly damaging if the score is between 0.447 and 0.908, and benign if the score is between 0 and 0.446. + +PolyPhen HDIV should be used when evaluating rare alleles at loci potentially involved in complex phenotypes, dense mapping of regions identified by genome-wide association studies, and analysis of natural selection from sequence data. The authors recommend calling probably damaging if the score is between 0.957 and 1, and possibly damaging if the score is between 0.453 and 0.956, and benign is the score is between 0 and 0.452. </help>