Skip to content
59 changes: 59 additions & 0 deletions paper/annotate.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
#!/bin/bash
#SBATCH --account=quinlan-kp
#SBATCH --partition=quinlan-kp
#SBATCH -o %j-%N.out
#SBATCH -e %j-%N.err
#SBATCH --time=48:00:00

#########
#CLINVAR#
#########

python ../pathoscore.py annotate --scores ../score-sets/GRCh37/CCR/ccrs.autosomes.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CCR/ccrs.xchrom.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CADD/whole_genome_SNVs.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/CADD/InDels.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/DANN/DANN_whole_genome_SNVs.tsv.bgz:DANN:5:max --scores ../score-sets/GRCh37/GERP/gerp_rs.txt.gz:GERP:3:max --scores ../score-sets/GRCh37/MCAP/mcap.txt.gz:MCAP:5:max --scores ../score-sets/GRCh37/MPC/mpc.txt.gz:MPC:5:max --scores ../score-sets/GRCh37/MTR/mtrflatfile_1.0.txt.gz:MTR:11:max --scores ../score-sets/GRCh37/REVEL/revel.txt.gz:REVEL:7:max --scores ../score-sets/GRCh37/RVIS/rvis.bed.gz:RVIS:5:max --scores ../score-sets/GRCh37/VVP/VVP_scores_allChr.txt.gz:VVP:5:max --scores ../score-sets/GRCh37/aloft/aloft.txt.gz:aloft_het,aloft_lof,aloft_rec:5,6,7:max,max,max --scores ../score-sets/GRCh37/fathmm/fathmm/fathmm.txt.gz:fathmm_non,fathmm_coding:5,6:max,max --scores ../score-sets/GRCh37/fitcons/fitcons/fitcons.bed.gz:fitCons:4:max --scores ../score-sets/GRCh37/metasvm/metasvm.txt.gz:MetaSVM:5:max --scores ../score-sets/GRCh37/mis_Z/missensez.bed.gz:missense_z:5:max --scores ../score-sets/GRCh37/pLI/pLI.bed.gz:pLI:5:max --scores ../score-sets/GRCh37/phastCons/phastcons_vertebrate.txt.gz:phastCons:4:max --scores ../score-sets/GRCh37/polyphen2/polyphen2/polyphen2.txt.gz:polyphen2_hvar:6:max --scores ../score-sets/GRCh37/sift/sift.txt.gz:SIFT:12:max ../truth-sets/GRCh37/clinvar/clinvar-benign.20170905.vcf.gz --prefix benign

python ../pathoscore.py annotate --scores ../score-sets/GRCh37/CCR/ccrs.autosomes.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CCR/ccrs.xchrom.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CADD/whole_genome_SNVs.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/CADD/InDels.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/DANN/DANN_whole_genome_SNVs.tsv.bgz:DANN:5:max --scores ../score-sets/GRCh37/GERP/gerp_rs.txt.gz:GERP:3:max --scores ../score-sets/GRCh37/MCAP/mcap.txt.gz:MCAP:5:max --scores ../score-sets/GRCh37/MPC/mpc.txt.gz:MPC:5:max --scores ../score-sets/GRCh37/MTR/mtrflatfile_1.0.txt.gz:MTR:11:max --scores ../score-sets/GRCh37/REVEL/revel.txt.gz:REVEL:7:max --scores ../score-sets/GRCh37/RVIS/rvis.bed.gz:RVIS:5:max --scores ../score-sets/GRCh37/VVP/VVP_scores_allChr.txt.gz:VVP:5:max --scores ../score-sets/GRCh37/aloft/aloft.txt.gz:aloft_het,aloft_lof,aloft_rec:5,6,7:max,max,max --scores ../score-sets/GRCh37/fathmm/fathmm/fathmm.txt.gz:fathmm_non,fathmm_coding:5,6:max,max --scores ../score-sets/GRCh37/fitcons/fitcons/fitcons.bed.gz:fitCons:4:max --scores ../score-sets/GRCh37/metasvm/metasvm.txt.gz:MetaSVM:5:max --scores ../score-sets/GRCh37/mis_Z/missensez.bed.gz:missense_z:5:max --scores ../score-sets/GRCh37/pLI/pLI.bed.gz:pLI:5:max --scores ../score-sets/GRCh37/phastCons/phastcons_vertebrate.txt.gz:phastCons:4:max --scores ../score-sets/GRCh37/polyphen2/polyphen2/polyphen2.txt.gz:polyphen2_hvar:6:max --scores ../score-sets/GRCh37/sift/sift.txt.gz:SIFT:12:max ../truth-sets/GRCh37/clinvar/clinvar-pathogenic-likely_pathogenic.20170905.vcf.gz --prefix pathogenic

# ad gene files
python ../pathoscore.py annotate pathogenic.vcf.gz --exclude ../gene-sets/GRCh37/ad_genes/ad_gene_complement.bed.gz --prefix adgene.pathogenic
python ../pathoscore.py annotate benign.vcf.gz --exclude ../gene-sets/GRCh37/ad_genes/ad_gene_complement.bed.gz --prefix adgene.benign

# ar gene files
python ../pathoscore.py annotate pathogenic.vcf.gz --exclude ../gene-sets/GRCh37/ar_genes/ar_gene_complement.bed.gz --prefix argene.pathogenic
python ../pathoscore.py annotate benign.vcf.gz --exclude ../gene-sets/GRCh37/ar_genes/ar_gene_complement.bed.gz --prefix argene.benign

# filtered pathogenics/benigns on ClinVar
python ../pathoscore.py annotate pathogenic.vcf.gz --exclude ../scripts/gnomad/ExAC.vcf.gz --exclude ../scripts/gnomad/gnomad.vcf.gz --prefix pathogenic.filter
python ../pathoscore.py annotate benign.vcf.gz --exclude ../scripts/gnomad/ExAC.vcf.gz --exclude ../scripts/gnomad/gnomad.vcf.gz --prefix benign.filter

#########
#SAMOCHA#
#########

python ../pathoscore.py annotate --scores ../score-sets/GRCh37/CCR/ccrs.autosomes.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CCR/ccrs.xchrom.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CADD/whole_genome_SNVs.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/CADD/InDels.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/DANN/DANN_whole_genome_SNVs.tsv.bgz:DANN:5:max --scores ../score-sets/GRCh37/GERP/gerp_rs.txt.gz:GERP:3:max --scores ../score-sets/GRCh37/MCAP/mcap.txt.gz:MCAP:5:max --scores ../score-sets/GRCh37/MPC/mpc.txt.gz:MPC:5:max --scores ../score-sets/GRCh37/MTR/mtrflatfile_1.0.txt.gz:MTR:11:max --scores ../score-sets/GRCh37/REVEL/revel.txt.gz:REVEL:7:max --scores ../score-sets/GRCh37/RVIS/rvis.bed.gz:RVIS:5:max --scores ../score-sets/GRCh37/VVP/VVP_scores_allChr.txt.gz:VVP:5:max --scores ../score-sets/GRCh37/aloft/aloft.txt.gz:aloft_het,aloft_lof,aloft_rec:5,6,7:max,max,max --scores ../score-sets/GRCh37/fathmm/fathmm/fathmm.txt.gz:fathmm_non,fathmm_coding:5,6:max,max --scores ../score-sets/GRCh37/fitcons/fitcons/fitcons.bed.gz:fitCons:4:max --scores ../score-sets/GRCh37/metasvm/metasvm.txt.gz:MetaSVM:5:max --scores ../score-sets/GRCh37/mis_Z/missensez.bed.gz:missense_z:5:max --scores ../score-sets/GRCh37/pLI/pLI.bed.gz:pLI:5:max --scores ../score-sets/GRCh37/phastCons/phastcons_vertebrate.txt.gz:phastCons:4:max --scores ../score-sets/GRCh37/polyphen2/polyphen2/polyphen2.txt.gz:polyphen2_hvar:6:max --scores ../score-sets/GRCh37/sift/sift.txt.gz:SIFT:12:max ../truth-sets/GRCh37/samocha/samocha.benign.vcf.gz --prefix control

python ../pathoscore.py annotate --scores ../score-sets/GRCh37/CCR/ccrs.autosomes.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CCR/ccrs.xchrom.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CADD/whole_genome_SNVs.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/CADD/InDels.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/DANN/DANN_whole_genome_SNVs.tsv.bgz:DANN:5:max --scores ../score-sets/GRCh37/GERP/gerp_rs.txt.gz:GERP:3:max --scores ../score-sets/GRCh37/MCAP/mcap.txt.gz:MCAP:5:max --scores ../score-sets/GRCh37/MPC/mpc.txt.gz:MPC:5:max --scores ../score-sets/GRCh37/MTR/mtrflatfile_1.0.txt.gz:MTR:11:max --scores ../score-sets/GRCh37/REVEL/revel.txt.gz:REVEL:7:max --scores ../score-sets/GRCh37/RVIS/rvis.bed.gz:RVIS:5:max --scores ../score-sets/GRCh37/VVP/VVP_scores_allChr.txt.gz:VVP:5:max --scores ../score-sets/GRCh37/aloft/aloft.txt.gz:aloft_het,aloft_lof,aloft_rec:5,6,7:max,max,max --scores ../score-sets/GRCh37/fathmm/fathmm/fathmm.txt.gz:fathmm_non,fathmm_coding:5,6:max,max --scores ../score-sets/GRCh37/fitcons/fitcons/fitcons.bed.gz:fitCons:4:max --scores ../score-sets/GRCh37/metasvm/metasvm.txt.gz:MetaSVM:5:max --scores ../score-sets/GRCh37/mis_Z/missensez.bed.gz:missense_z:5:max --scores ../score-sets/GRCh37/pLI/pLI.bed.gz:pLI:5:max --scores ../score-sets/GRCh37/phastCons/phastcons_vertebrate.txt.gz:phastCons:4:max --scores ../score-sets/GRCh37/polyphen2/polyphen2/polyphen2.txt.gz:polyphen2_hvar:6:max --scores ../score-sets/GRCh37/sift/sift.txt.gz:SIFT:12:max ../truth-sets/GRCh37/samocha/samocha.pathogenic.vcf.gz --prefix neurodev

# filtered pathogenics on samocha
python ../pathoscore.py annotate neurodev.vcf.gz --exclude ../scripts/gnomad/ExAC.vcf.gz --exclude ../scripts/gnomad/gnomad.vcf.gz --prefix neurodev.filter

#######
#HOMSY#
#######

python ../pathoscore.py annotate --scores ../score-sets/GRCh37/CCR/ccrs.autosomes.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CCR/ccrs.xchrom.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CADD/whole_genome_SNVs.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/CADD/InDels.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/DANN/DANN_whole_genome_SNVs.tsv.bgz:DANN:5:max --scores ../score-sets/GRCh37/GERP/gerp_rs.txt.gz:GERP:3:max --scores ../score-sets/GRCh37/MCAP/mcap.txt.gz:MCAP:5:max --scores ../score-sets/GRCh37/MPC/mpc.txt.gz:MPC:5:max --scores ../score-sets/GRCh37/MTR/mtrflatfile_1.0.txt.gz:MTR:11:max --scores ../score-sets/GRCh37/REVEL/revel.txt.gz:REVEL:7:max --scores ../score-sets/GRCh37/RVIS/rvis.bed.gz:RVIS:5:max --scores ../score-sets/GRCh37/VVP/VVP_scores_allChr.txt.gz:VVP:5:max --scores ../score-sets/GRCh37/aloft/aloft.txt.gz:aloft_het,aloft_lof,aloft_rec:5,6,7:max,max,max --scores ../score-sets/GRCh37/fathmm/fathmm/fathmm.txt.gz:fathmm_non,fathmm_coding:5,6:max,max --scores ../score-sets/GRCh37/fitcons/fitcons/fitcons.bed.gz:fitCons:4:max --scores ../score-sets/GRCh37/metasvm/metasvm.txt.gz:MetaSVM:5:max --scores ../score-sets/GRCh37/mis_Z/missensez.bed.gz:missense_z:5:max --scores ../score-sets/GRCh37/pLI/pLI.bed.gz:pLI:5:max --scores ../score-sets/GRCh37/phastCons/phastcons_vertebrate.txt.gz:phastCons:4:max --scores ../score-sets/GRCh37/polyphen2/polyphen2/polyphen2.txt.gz:polyphen2_hvar:6:max --scores ../score-sets/GRCh37/sift/sift.txt.gz:SIFT:12:max ../truth-sets/GRCh37/homsy/homsy.benign.vcf.gz --prefix hombenign

python ../pathoscore.py annotate --scores ../score-sets/GRCh37/CCR/ccrs.autosomes.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CCR/ccrs.xchrom.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CADD/whole_genome_SNVs.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/CADD/InDels.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/DANN/DANN_whole_genome_SNVs.tsv.bgz:DANN:5:max --scores ../score-sets/GRCh37/GERP/gerp_rs.txt.gz:GERP:3:max --scores ../score-sets/GRCh37/MCAP/mcap.txt.gz:MCAP:5:max --scores ../score-sets/GRCh37/MPC/mpc.txt.gz:MPC:5:max --scores ../score-sets/GRCh37/MTR/mtrflatfile_1.0.txt.gz:MTR:11:max --scores ../score-sets/GRCh37/REVEL/revel.txt.gz:REVEL:7:max --scores ../score-sets/GRCh37/RVIS/rvis.bed.gz:RVIS:5:max --scores ../score-sets/GRCh37/VVP/VVP_scores_allChr.txt.gz:VVP:5:max --scores ../score-sets/GRCh37/aloft/aloft.txt.gz:aloft_het,aloft_lof,aloft_rec:5,6,7:max,max,max --scores ../score-sets/GRCh37/fathmm/fathmm/fathmm.txt.gz:fathmm_non,fathmm_coding:5,6:max,max --scores ../score-sets/GRCh37/fitcons/fitcons/fitcons.bed.gz:fitCons:4:max --scores ../score-sets/GRCh37/metasvm/metasvm.txt.gz:MetaSVM:5:max --scores ../score-sets/GRCh37/mis_Z/missensez.bed.gz:missense_z:5:max --scores ../score-sets/GRCh37/pLI/pLI.bed.gz:pLI:5:max --scores ../score-sets/GRCh37/phastCons/phastcons_vertebrate.txt.gz:phastCons:4:max --scores ../score-sets/GRCh37/polyphen2/polyphen2/polyphen2.txt.gz:polyphen2_hvar:6:max --scores ../score-sets/GRCh37/sift/sift.txt.gz:SIFT:12:max ../truth-sets/GRCh37/homsy/homsy.pathogenic.vcf.gz --prefix hompathogenic

# filtered pathogenics on homsy
python ../pathoscore.py annotate hompathogenic.vcf.gz --exclude ../scripts/gnomad/ExAC.vcf.gz --exclude ../scripts/gnomad/gnomad.vcf.gz --prefix hompathogenic.filter

########
#WIGLER#
########

python ../pathoscore.py annotate --scores ../score-sets/GRCh37/CCR/ccrs.autosomes.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CCR/ccrs.xchrom.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CADD/whole_genome_SNVs.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/CADD/InDels.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/DANN/DANN_whole_genome_SNVs.tsv.bgz:DANN:5:max --scores ../score-sets/GRCh37/GERP/gerp_rs.txt.gz:GERP:3:max --scores ../score-sets/GRCh37/MCAP/mcap.txt.gz:MCAP:5:max --scores ../score-sets/GRCh37/MPC/mpc.txt.gz:MPC:5:max --scores ../score-sets/GRCh37/MTR/mtrflatfile_1.0.txt.gz:MTR:11:max --scores ../score-sets/GRCh37/REVEL/revel.txt.gz:REVEL:7:max --scores ../score-sets/GRCh37/RVIS/rvis.bed.gz:RVIS:5:max --scores ../score-sets/GRCh37/VVP/VVP_scores_allChr.txt.gz:VVP:5:max --scores ../score-sets/GRCh37/aloft/aloft.txt.gz:aloft_het,aloft_lof,aloft_rec:5,6,7:max,max,max --scores ../score-sets/GRCh37/fathmm/fathmm/fathmm.txt.gz:fathmm_non,fathmm_coding:5,6:max,max --scores ../score-sets/GRCh37/fitcons/fitcons/fitcons.bed.gz:fitCons:4:max --scores ../score-sets/GRCh37/metasvm/metasvm.txt.gz:MetaSVM:5:max --scores ../score-sets/GRCh37/mis_Z/missensez.bed.gz:missense_z:5:max --scores ../score-sets/GRCh37/pLI/pLI.bed.gz:pLI:5:max --scores ../score-sets/GRCh37/phastCons/phastcons_vertebrate.txt.gz:phastCons:4:max --scores ../score-sets/GRCh37/polyphen2/polyphen2/polyphen2.txt.gz:polyphen2_hvar:6:max --scores ../score-sets/GRCh37/sift/sift.txt.gz:SIFT:12:max ../truth-sets/GRCh37/wigler-autism/wigler-autism.benign.vcf.gz --prefix wigbenign

python ../pathoscore.py annotate --scores ../score-sets/GRCh37/CCR/ccrs.autosomes.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CCR/ccrs.xchrom.v2.20180420.bed.gz:CCR:4:max --scores ../score-sets/GRCh37/CADD/whole_genome_SNVs.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/CADD/InDels.tsv.gz:CADD:6:max --scores ../score-sets/GRCh37/DANN/DANN_whole_genome_SNVs.tsv.bgz:DANN:5:max --scores ../score-sets/GRCh37/GERP/gerp_rs.txt.gz:GERP:3:max --scores ../score-sets/GRCh37/MCAP/mcap.txt.gz:MCAP:5:max --scores ../score-sets/GRCh37/MPC/mpc.txt.gz:MPC:5:max --scores ../score-sets/GRCh37/MTR/mtrflatfile_1.0.txt.gz:MTR:11:max --scores ../score-sets/GRCh37/REVEL/revel.txt.gz:REVEL:7:max --scores ../score-sets/GRCh37/RVIS/rvis.bed.gz:RVIS:5:max --scores ../score-sets/GRCh37/VVP/VVP_scores_allChr.txt.gz:VVP:5:max --scores ../score-sets/GRCh37/aloft/aloft.txt.gz:aloft_het,aloft_lof,aloft_rec:5,6,7:max,max,max --scores ../score-sets/GRCh37/fathmm/fathmm/fathmm.txt.gz:fathmm_non,fathmm_coding:5,6:max,max --scores ../score-sets/GRCh37/fitcons/fitcons/fitcons.bed.gz:fitCons:4:max --scores ../score-sets/GRCh37/metasvm/metasvm.txt.gz:MetaSVM:5:max --scores ../score-sets/GRCh37/mis_Z/missensez.bed.gz:missense_z:5:max --scores ../score-sets/GRCh37/pLI/pLI.bed.gz:pLI:5:max --scores ../score-sets/GRCh37/phastCons/phastcons_vertebrate.txt.gz:phastCons:4:max --scores ../score-sets/GRCh37/polyphen2/polyphen2/polyphen2.txt.gz:polyphen2_hvar:6:max --scores ../score-sets/GRCh37/sift/sift.txt.gz:SIFT:12:max ../truth-sets/GRCh37/wigler-autism/wigler-autism.pathogenic.vcf.gz --prefix wigpathogenic

# filtered pathogenics on wigler
python ../pathoscore.py annotate wigpathogenic.vcf.gz --exclude ../scripts/gnomad/ExAC.vcf.gz --exclude ../scripts/gnomad/gnomad.vcf.gz --prefix wigpathogenic.filter
58 changes: 58 additions & 0 deletions paper/correlation.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
from __future__ import print_function
metrics = ["CCR", "CADD", "DANN", "GERP", "MCAP", "MPC", "MTR", "REVEL", "RVIS", "VVP", "aloft_het", "aloft_lof", "aloft_rec", "fathmm_non", "fathmm_coding", "fitCons", "MetaSVM", "missense_z", "pLI", "phastCons", "polyphen2_hvar", "SIFT", "mis_badness", "Grantham", "BLOSUM"]
from cyvcf2 import VCF
import pandas as pd
from argparse import ArgumentParser
import matplotlib
matplotlib.use('Agg')
import matplotlib.backends.backend_pdf
from matplotlib import pyplot as plt
from matplotlib import ticker
#import seaborn as sns
#sns.set_style('white')
import sys
if sys.version_info.major > 2:
xrange = range

def key_val(arg):
return arg.split(",")
parser = ArgumentParser(description = "create correlation matrix for metrics across different truth sets")
parser.add_argument("-f", "--file", help = "input vcfs", type=key_val, nargs = "+")
parser.add_argument("-n", "--name", help = "evaluation set names/titles", nargs = "+")
parser.add_argument("-o", "--output", help = "output file")
args = parser.parse_args()

corr = {}
for var, name in zip(args.file, args.name):
patho, benign = var
vcfpatho = VCF(patho)
vcfbenign = VCF(benign)
p = pd.DataFrame([variant.INFO.get(key) for key in metrics] for variant in vcfpatho)
b = pd.DataFrame([variant.INFO.get(key) for key in metrics] for variant in vcfbenign)
p.columns = metrics
b.columns = metrics
d = p.append(b)
corr[name] = d.corr(method = 'kendall')
print(corr)
print(d)

plt.rcParams["figure.figsize"]=(5,5)
matplotlib.rcParams['pdf.fonttype'] = 42
matplotlib.rcParams['font.family'] = 'sans-serif'
matplotlib.rcParams['font.sans-serif'] = ['Arial']
print(len(args.file))
#fig, ax = plt.subplots(len(args.file), 1)
for i, name in enumerate(args.name):
fig, ax = plt.subplots(1)
g = ax.matshow(corr[name], interpolation = 'nearest', cmap = plt.cm.Blues)
fig.colorbar(g, ax=ax)
ax.xaxis.set_major_locator(ticker.LinearLocator(numticks = len(metrics)))
ax.yaxis.set_major_locator(ticker.LinearLocator(numticks = len(metrics)))
ax.set_xticklabels(metrics)
ax.set_yticklabels(metrics)
plt.setp(ax.get_xticklabels(), fontsize = 10, rotation = 'vertical')
plt.title(name, y=1.35)
pdf = matplotlib.backends.backend_pdf.PdfPages(args.output)
for fig in xrange(1, plt.gcf().number+1): ## will open an empty extra figure :(
pdf.savefig(fig, bbox_inches = 'tight')
pdf.close()
1 change: 1 addition & 0 deletions paper/correlation.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
python correlation.py -f pathogenic.vcf.gz,benign.vcf.gz -n ClinVar -o $HOME/public_html/pathoscorepaper/correlation.pdf
136 changes: 136 additions & 0 deletions paper/create.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
#create score sets

cd ../score-sets/GRCh37/CADD
bash make.sh
cd -

cd ../score-sets/GRCh37/CCR
bash make.sh
cd -

cd ../score-sets/GRCh37/DANN
bash make.sh
cd -

cd ../score-sets/GRCh37/GERP
bash make.sh
cd -

cd ../score-sets/GRCh37/MCAP
bash make.sh
cd -

cd ../score-sets/GRCh37/MPC
bash make.sh
cd -

cd ../score-sets/GRCh37/MTR
bash make.sh
cd -

cd ../score-sets/GRCh37/REVEL
bash make.sh
cd -

cd ../score-sets/GRCh37/RVIS
bash make.sh
cd -

cd ../score-sets/GRCh37/VVP
bash make.sh
cd -

cd ../score-sets/GRCh37/aloft
bash make.sh
cd -

cd ../score-sets/GRCh37/fathmm
bash make.sh
cd -

cd ../score-sets/GRCh37/fitcons
bash make.sh
cd -

cd ../score-sets/GRCh37/metasvm
bash make.sh
cd -

cd ../score-sets/GRCh37/mis_Z
bash make.sh
cd -

cd ../score-sets/GRCh37/pLI
bash make.sh
cd -

cd ../score-sets/GRCh37/phastCons
bash make.sh
cd -

cd ../score-sets/GRCh37/phylop
bash make.sh
cd -

cd ../score-sets/GRCh37/polyphen2
bash make.sh
cd -

cd ../score-sets/GRCh37/sift
bash make.sh
cd -

# make truth sets

cd ../truth-sets/GRCh37/clinvar
bash make.sh
cd -

cd ../truth-sets/GRCh37/homsy
bash make.sh
cd -

cd ../truth-sets/GRCh37/samocha
bash make.sh
cd -

cd ../truth-sets/GRCh37/wellderly
bash make.sh
cd -

cd ../truth-sets/GRCh37/wigler-autism
bash make.sh
cd -

# make gene sets

cd ../gene-sets/GRCh37/ad_genes/
bash make.sh
cd -

cd ../gene-sets/GRCh37/hi_genes/
bash make.sh
cd -

cd ../gene-sets/GRCh37/ar_genes/
bash make.sh
cd -

cd ../gene-sets/GRCh37/cancer_genes/
bash make.sh
cd -

cd ../gene-sets/GRCh37/heart_genes/
bash make.sh
cd -

cd ../gene-sets/GRCh37/eiee_genes/
bash make.sh
cd -

# make population sets

cd ../scripts/gnomad
bash makeexac.sh
bash makegnomad.sh
cd -
18 changes: 18 additions & 0 deletions paper/cubarplot.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
from __future__ import print_function
import numpy as np
import matplotlib
matplotlib.use('Agg')
from matplotlib import pyplot as plt
import sys
import pandas as pd

plt.rcParams["figure.figsize"]=(14,5)
with open(sys.argv[1], 'r') as clinicaltable:
df = pd.read_csv(clinicaltable, sep='\t', index_col=0)
df = df.T

ax = df.plot.bar(rot=0,legend=False,width=.8,align='center', fontsize=18)
ax.legend(loc='center left', bbox_to_anchor=(1, 0.5), fontsize=18)
ax.set_ylabel("Clinical Utility", fontsize=18)
plt.tight_layout()
plt.savefig("".join(sys.argv[1].split(".cu.tsv",)[0])+"cubarplot.pdf", bbox_inches="tight")
2 changes: 2 additions & 0 deletions paper/cubarplots.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
python cubarplot.py $HOME/public_html/pathoscorepaper/clinvar.cu.tsv
python cubarplot.py $HOME/public_html/pathoscorepaper/samocha.cu.tsv
Loading