Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Initial upload of ExCID v1.5

  • Loading branch information...
commit 2bb33434b837f55c6bdb4b51fa90f3e77d6b7837 1 parent 219989c
@cbuhay authored
View
211 ExCID_v1.5/ExCID.BatchScript.pl
@@ -0,0 +1,211 @@
+#!/usr/bin/perl -w
+## Wraper Script for the ExCID.
+use strict;
+use diagnostics;
+use Getopt::Long;
+
+
+
+unless (scalar @ARGV > 0){USAGE(); exit; }
+
+
+### GLOBAL VARS ###
+my %opt;
+my $script_dir;
+my $script_dir_tmp = $0;
+$script_dir_tmp =~m/^.+\//;
+$script_dir=$&;
+my $index = "$script_dir/index_files";
+my $output_dir = "$script_dir/ouput_dir";
+my $database1 = "$script_dir/database/whole_UCSC_detail.txt.final-noCHR.bed";
+my $database2 = "$script_dir/database/whole_Refseq_UCSC_detail.txt.final-noCHR.bed";
+my $script ="$script_dir/ExCID_getlowcov_and_annotate_exome_v1.5.pl";
+my $default_index = "$script_dir/VCRome_index_131206/";
+my $covfasta_gen_script = "java -Xmx6000M -jar $script_dir/bin/Generate_covfasta.jar";
+
+### OPTIONS ###
+my @bam_files = ();
+GetOptions('f=s' => \@bam_files, 'm:i' => \$opt{m}, 'i:s' => \$opt{i}) || &USAGE;
+my $min = $opt{m} || 20; #meant for sites <20X coverage
+my $bed = $opt{i} || "null";
+my $file;
+
+
+if ($bed ne "null") {
+ print STDERR "Annotationg Bed file...\n\n ";
+ system("mkdir -p $output_dir");
+ system("ln -s $bed $output_dir/");
+
+ $bed =~ s{.*/}{}; # remove path
+ $bed = "$output_dir/$bed";
+ my %bedfile;
+
+ open(my $fhb,"<$bed") or die $!;
+ my $line = <$fhb>;
+ chomp($line);
+ my @tmp = split("\t",$line);
+ my $cols = scalar @tmp;
+ close($fhb);
+
+ my $cmd="";
+
+ for(my $i =0; $i < $cols; $i++){
+ my $tmp = $i+1;
+ $cmd .= "\$$tmp\"\t\"";
+ }
+ $cmd .= "\$".($cols+3+1)."\t";
+
+ system("$script_dir/bin/bedtools intersect -a $bed -b $database1 -wao | awk -F\$\'\t\' '{print $cmd}' > $bed.Annotated-tmp");
+
+
+
+ open($fhb,"<$bed.Annotated-tmp") or die $!;
+ $line = <$fhb>;
+ chomp($line);
+ @tmp = split("\t",$line);
+ $cols = scalar @tmp;
+ close($fhb);
+
+ $cmd="";
+ for(my $i =0; $i < $cols; $i++){
+ my $tmp = $i+1;
+ $cmd .= "\$$tmp\"\t\"";
+ }
+ $cmd .= "\$".($cols+3+1)."\t";
+
+ system("$script_dir/bin/bedtools intersect -a $bed.Annotated-tmp -b $database2 -wao | awk -F\$\'\t\' '{print $cmd}' > $bed.Annotated");
+ system("mkdir -p $index");
+
+ $file = "$bed.Annotated";
+ my %data_annotation;
+ open(my $fh, "<$file") or die $!;
+ while (my $line = <$fh>) {
+ chomp($line);
+ my @columns = split("\t",$line);
+ my $key = "$columns[0]_$columns[1]_$columns[2]";
+ unless (exists $data_annotation{$key}){
+ $data_annotation{$key}{'gene'} = "";
+ $data_annotation{$key}{'transcript'} = "";
+ $data_annotation{$key}{'other'} = "";
+ $data_annotation{$key}{'rest'} = join("\t", @columns[3..(scalar(@columns)-3)]);
+ }
+
+ my $db1 = $columns[scalar(@columns)-2];
+ my $db2 = $columns[scalar(@columns)-1];
+ my @db1_columns = split(";",$db1);
+ my @db2_columns = split(";",$db2);
+
+ foreach my $db1_col (@db1_columns){
+ if ($db1_col eq ".") {
+ last;
+ }
+
+ my @db1_cols = split(/\|/,$db1_col);
+ if (length($data_annotation{$key}{'gene'}) == 0) {
+ $data_annotation{$key}{'gene'} = $db1_cols[0];
+ }else {
+ unless (index($data_annotation{$key}{'other'}, $db1_cols[0]) != -1 || index($data_annotation{$key}{'gene'}, $db1_cols[0]) != -1) {
+ $data_annotation{$key}{'other'} .= $db1_cols[0].";";
+ }
+ }
+ unless (index($data_annotation{$key}{'transcript'}, $db1_cols[1]) != -1) {
+ $data_annotation{$key}{'transcript'}.=$db1_cols[1].";";
+ }
+ }
+
+
+ foreach my $db2_col (@db2_columns){
+ if ($db2_col eq ".") {
+ last;
+ }
+ my @db2_cols = split(/\|/,$db2_col);
+ if (length($data_annotation{$key}{'gene'}) == 0) {
+ $data_annotation{$key}{'gene'} = $db2_cols[0];
+ }else {
+ unless (index($data_annotation{$key}{'other'}, $db2_cols[0]) != -1 || index($data_annotation{$key}{'gene'}, $db2_cols[0]) != -1) {
+ $data_annotation{$key}{'other'} .= $db2_cols[0].";";
+ }
+ }
+
+ unless (index($data_annotation{$key}{'transcript'}, $db2_cols[1]) != -1) {
+ $data_annotation{$key}{'transcript'}.= $db2_cols[1].";";
+ }
+ }
+
+ $data_annotation{$key}{'other'} =~s/;$//;
+ $data_annotation{$key}{'transcript'}=~ s/;$//;
+
+ if (length($data_annotation{$key}{'gene'}) < 1) {
+ $data_annotation{$key}{'gene'} =".";
+ }
+ if (length($data_annotation{$key}{'transcript'}) < 1) {
+ $data_annotation{$key}{'transcript'} =".";
+ }
+ if (length($data_annotation{$key}{'other'}) < 1) {
+ $data_annotation{$key}{'other'} =".";
+ }
+
+ }
+ close($fh);
+
+ open(my $fho, ">$file.edit") or die $!;
+ foreach my $key (keys %data_annotation){
+ my @columns = split("_",$key);
+ if (length($data_annotation{$key}{'rest'}) < 1) {
+ print $fho "$columns[0]\t$columns[1]\t$columns[2]\t$data_annotation{$key}{'gene'}\t$data_annotation{$key}{'transcript'}\t$data_annotation{$key}{'other'}\t.\n";
+ }else{
+ print $fho "$columns[0]\t$columns[1]\t$columns[2]\t$data_annotation{$key}{'gene'}\t$data_annotation{$key}{'transcript'}\t$data_annotation{$key}{'other'}\t$data_annotation{$key}{'rest'}\n";
+ }
+ }
+ close($fho);
+
+
+
+ system("$script_dir/bin/bedtools sort -i $file.edit > $file");
+
+ open($fhb,"<$file") or die $!;
+ $line = <$fhb>;
+ chomp($line);
+ @tmp = split("\t",$line);
+ $cols = scalar @tmp;
+ close($fhb);
+
+ my $header = "Chr Start Stop Gene RefSeq/HGMD Other_names";
+ foreach my $i (7 .. $cols){
+ my $tmp_cnt = $i-3;
+ $header .= " Usr_col_$tmp_cnt";
+ }
+
+ system("echo $header > $index/HEADER.txt");
+
+ system("awk \'{print > \"$index/\"\$1\".targetindex.txt\"}\' $file");
+ my $rm_file = "$file.edit";
+ unlink $rm_file or warn "Could not unlink $rm_file: $!";
+ $rm_file = "$bed.Annotated-tmp";
+ unlink $rm_file or warn "Could not unlink $rm_file: $!";
+}else{
+ $file = "$default_index/vcrome2.1_hg19.flattened.bed";
+ $index = $default_index;
+}
+
+
+foreach my $bam_file(@bam_files){
+ my $tmp = $bam_file;
+ #$tmp =~ s{.*/}{}; # remove path
+ #$tmp = "$output_dir/$tmp";
+ $tmp=~s/\.bam//;
+ print STDERR "Generating cov.fasta file...\n\n";
+ system("$covfasta_gen_script -o $tmp -t $file -i $bam_file");
+ print STDERR "Running ExCID main script...\n\n";
+ system("$script -f $tmp.cov.fasta -m $min -i $index");
+}
+
+
+### SUBROUTINES ###
+sub USAGE {
+ print "\nUSAGE: $0 -f <BAM file> -m <min threshold> -i <Bed file>\n";
+ print " -f: BAM file. These option can be used multiple times for more than 1 bam\n";
+ print " -m: minimal threshold; default 20\n";
+ print " -i: Bed file\n\n";
+ exit;
+}
View
211 ExCID_v1.5/ExCID_getlowcov_and_annotate_exome_v1.5.pl
@@ -0,0 +1,211 @@
+#!/usr/bin/perl -w
+#
+# Description: Given file with fasta.cov format,
+# determines avg coverage of each target region,
+# and detects bases lower than user-defined cov
+# threshhold. Also determines avg-cov for the
+# poorly covered bases.
+#
+# Annotation: additionally, for each target
+# and subsequent lowcoverage region, annotates
+# genename(s) and transcript-exons covered.
+#
+# Date: 2013 Feb 07; version1
+# Date: 2013 April 20; version1.1 - NV: Added index as an input parameters,
+# removed hardlinks, changed output filenames as input_file.VCRome-anno.txt
+# Date: 2013 May 24: version1.2 Bug Fixes
+# 1) Fixed: targets not sitting on genes or mirna are skipped
+# 2) Fixed: exact coverages of 20X being ignored.
+# USAGE: $0 -f <fasta.cov> -m <min_cov> -i <path/to/capture_design_index_directory>
+####################################################################################
+use strict;
+use diagnostics;
+use Getopt::Std;
+
+### GLOBAL VARS ###
+my %opt;
+my $chr;
+my $start_coord;
+my $stop_coord;
+my $anno_result_out;
+my $script_dir;
+my $warn = 1;
+
+### OPTIONS ###
+getopts("f:m:i:",\%opt);
+my $file = $opt{f} || &USAGE;
+my $min = $opt{m} || 20; #meant for sites <20X coverage
+my $index = $opt{i} || &USAGE;
+
+### OUTPUT FILES ###
+#my $VCRome_target_outfile = "cap_stats.VCRome-anno.txt";
+my $VCRome_target_outfile = $file;
+#$VCRome_target_outfile =~ s{.*/}{}; # remove path
+$VCRome_target_outfile =~ s{\.[^.]+$}{}; # removes extension
+$VCRome_target_outfile .= ".VCRome-anno.txt";
+
+#my $VCRome_lowcov_outfile = "cap_stats.lowcov-anno.txt";
+my $VCRome_lowcov_outfile = $file;
+#$VCRome_lowcov_outfile =~ s{.*/}{}; # remove path
+$VCRome_lowcov_outfile =~ s{\.[^.]+$}{}; # removes extension
+$VCRome_lowcov_outfile .= ".lowcov-anno.txt";
+
+### BODY ###
+my $script_dir_tmp = $0;
+$script_dir_tmp =~m/^.+\//;
+$script_dir=$&;
+
+open (HEADER, "$index/HEADER.txt") or die "Header file missing in $index:$!\n";
+my $header = <HEADER>;
+my @header_cols = split(" ",$header);
+my $out_header = join("\t",@header_cols[0..2])."\tLength\tCoverage\t".join("\t",@header_cols[3..(scalar(@header_cols)-1)]);
+open (OUTVCR, ">$VCRome_target_outfile") || die "Can't open $VCRome_target_outfile:$!\n";
+open (OUTLOW, ">$VCRome_lowcov_outfile") || die "Can't open $VCRome_target_outfile:$!\n";
+print OUTVCR '##generatedBy:', "$0", "\n";
+print OUTVCR '##fileDate=', eval { `date +"%Y%m%d"` }; # not portable to non-Unix
+print OUTVCR "##$out_header\n";
+print OUTLOW '##generatedBy:', "$0", "\n";
+print OUTLOW '##fileDate=', eval { `date +"%Y%m%d"` }; # not portable to non-Unix
+print OUTLOW "##$out_header\n";
+
+open (FILE, "<$file") || die "Can't open $file: $!\n";
+while (<FILE>) {
+ chomp $_;
+ if ($_ =~ m/^\>/) {
+ ($chr, $start_coord, $stop_coord) = split(/ /, $_);
+ $chr =~ s/\>//;
+ $chr =~ s/[Cc]hr//; #if the number has a 'chr' prefix, remove it.
+ next;
+ } elsif ($_ =~ m/^$/) {
+ #this line is blank; skip it.
+ next;
+ }
+
+ my @array = split(/ /, $_);
+ my $array_size = scalar(@array);
+ my $target_sum = eval join '+',@array;
+ my $avg_target_cov = $target_sum / $array_size;
+ $avg_target_cov = sprintf("%.2f", $avg_target_cov);
+ #print OUTVCR "$chr\t$start_coord\t$stop_coord\t$array_size\t$avg_target_cov\n";
+ $anno_result_out = &ANNO_TARGET($index, $chr, $start_coord, $stop_coord, $array_size, $avg_target_cov);
+ print OUTVCR "$anno_result_out\n";
+ my $array_marker = $start_coord + $array_size - 1;
+ my $count = $start_coord;
+
+ my $start;
+ my $end;
+ my $iterate;
+ my $comment;
+
+ my @lowcov_array;
+ my $low_cov_array_size;
+ my $low_cov_sum;
+ my $low_cov_avg;
+
+ foreach (@array) {
+ my $num = $_; chomp $_;
+ if ( $num >= $min )
+ {
+ if (( $iterate) && ( $iterate < $count )) {
+ $end = $count - 1;
+ $low_cov_array_size = @lowcov_array;
+ $low_cov_sum = eval join '+',@lowcov_array;
+ $low_cov_avg = $low_cov_sum / $low_cov_array_size;
+ $low_cov_avg = sprintf("%.2f", $low_cov_avg);
+ #print OUTLOW "$chr\t$start\t$end\t$low_cov_array_size\t$low_cov_avg\n";
+ $anno_result_out = &ANNO_TARGET($index, $chr, $start, $end, $low_cov_array_size, $low_cov_avg);
+ print OUTLOW "$anno_result_out\n";
+ $start = "";
+ $end = "";
+ $iterate = "";
+ $comment = "above threshold";
+ $low_cov_array_size = "";
+ $low_cov_sum = "";
+ $low_cov_avg = "";
+ $count++;
+ } else {
+ $count++;
+ $comment = "above threshold";
+ }
+ }
+ elsif ( $num < $min )
+ {
+
+ if ( ! $start ) {
+ $start = $count;
+ $iterate = $count;
+ push(@lowcov_array, $num);
+ $comment = "start & iteration started";
+ } elsif ( $count == $array_marker ) {
+ push(@lowcov_array, $num);
+ $low_cov_array_size = @lowcov_array;
+ $low_cov_sum = eval join '+',@lowcov_array;
+ $low_cov_avg = $low_cov_sum / $low_cov_array_size;
+ $low_cov_avg = sprintf("%.2f", $low_cov_avg);
+ #print OUTLOW "$chr\t$start\t$count\t$low_cov_array_size\t$low_cov_avg\n";
+ $anno_result_out = &ANNO_TARGET($index, $chr, $start, $count, $low_cov_array_size, $low_cov_avg);
+ print OUTLOW "$anno_result_out\n";
+ } elsif ( $start < $count ) {
+ $iterate++;
+ $comment = "iterating";
+ push(@lowcov_array, $num);
+ }
+ $count++;
+ }
+ #print "$num\t$count\t$comment\n";
+ }
+}
+close FILE;
+close OUTLOW;
+close HEADER;
+
+### SUBROUTINES ###
+sub USAGE {
+ print "\nUSAGE: $0 -f <cov.fasta> -m <min threshold> -i </path/to/capture_design_index_directory>\n";
+ print " -f: file in fasta coverage format.\n";
+ print " -m: minimal threshold; default 20\n";
+ print " -i: path to capture design index directory\n\n";
+ exit;
+}
+
+sub ANNO_TARGET {
+ my $trigger = 11000; #The biggest exon I've seen is ~10k, no use looking beyond that.
+ my $index = shift;
+ my $lowchr = shift;
+ my $lowstart = shift;
+ my $lowstop = shift;
+ my $length = shift;
+ my $cov = shift;
+ my $annoresult;
+
+ my $index_path = "$index/";
+ my $index_file = $index_path . $lowchr . ".targetindex.txt";
+ open (INDEX, "<$index_file") || die "Can't open $index_file: $!\n";
+ INDEXLOOP: while (<INDEX>) {
+ chomp $_;
+ my $line = $_;
+ my @columns = split(/\t/, $line);
+ if ($warn == 1 && scalar @columns != scalar @header_cols ) {
+ print STDERR "The number of columns in Header do not match the index files. Please check the Header.txt file.\n";
+ $warn = 0;
+ }
+
+ my $start = $columns[1];
+ my $stop = $columns[2];
+ my $start_dif = $lowstart - $start;
+ if ( $start_dif >= $trigger ) {
+ next INDEXLOOP;
+ } elsif ( ($start <= $lowstart) && ($stop >= $lowstop)) {
+ $annoresult = "$lowchr\t$lowstart\t$lowstop\t$length\t$cov";
+ for(my $i = 3; $i<scalar(@columns);$i++){
+ $annoresult .="\t$columns[$i]";
+ }
+ return $annoresult;
+ }
+ }
+ if (! $annoresult) {
+ $annoresult = "$lowchr\t$lowstart\t$lowstop\t$length\t$cov";
+ return $annoresult;
+ }
+ close INDEX;
+}
View
85 ExCID_v1.5/ExCID_xform_covfasta_to_wig_v1.5.pl
@@ -0,0 +1,85 @@
+#!/usr/bin/perl
+#
+# Description: create a wiggle file
+# from the cov.fasta file, so the
+# WGL can view the exome as a track
+# in UCSC. Will create a bedfile
+# from the lowcov annotated file for
+# use in UCSC.
+#######################################
+use strict;
+use diagnostics;
+use Getopt::Std;
+
+### GLOBAL VARS ###
+my %opt;
+### OPTIONS ###
+getopts("f:l:",\%opt);
+my $infile = $opt{f} || &USAGE;
+my $lowcov_in = $opt{l} || &USAGE; #meant for sites <20X coverage
+
+#my $infile = $ARGV[0] || die "Please enter a file in cov.fasta format\n"; #input cap_stats.cov.fasta
+#my $outfile = "cap_stats.VCRome.wig";
+(my $outfile = $infile) =~ s{.*/}{}; # remove path
+$outfile =~ s{\.[^.]+$}{}; # removes extension
+$outfile .= ".VCRome.wig";
+
+# All output files will have this header:
+open(OUTFILE, ">$outfile") || die "Can't open $outfile: $!\n";
+print OUTFILE "track type=wiggle_0 name=Exome_Coverage autoScale=off viewLimits=0.0:100.0 graphType=bar visibility=full\n";
+
+
+open(INFILE, "<$infile") || die "Can't open $infile: $!\n";
+while (<INFILE>) {
+ chomp $_;
+ if ($_ =~ m/^\>/) {
+ my ($chr, $start_coord, $stop_coord) = split(/ /, $_);
+ $chr =~ s/\>//;
+ $chr =~ s/[Cc]hr//; #I need to control how 'chr' looks.
+ print OUTFILE "fixedStep chrom=chr$chr start=$start_coord step=1\n";
+ next;
+ } elsif ($_ =~ m/^$/) {
+ #this line is blank; skip it.
+ next;
+ }
+
+ my @array = split(/ /, $_);
+
+ foreach (@array) {
+ my $num = $_; chomp $_;
+ print OUTFILE "$num\n";
+ }
+}
+close OUTFILE;
+close INFILE;
+
+#my $lowcov_in = "cap_stats.lowcov-anno.txt";
+#my $lowcov_out = "cap_stats.lowcov.bed";
+
+(my $lowcov_out = $lowcov_in) =~ s{.*/}{}; # remove path
+$lowcov_out =~ s{\.[^.]+$}{}; # removes extension
+$lowcov_out .= ".bed";
+
+open(LOWOUT, ">$lowcov_out") || die "Can't open $lowcov_out: $!\n";
+open(LOWIN, "<$lowcov_in") || die "Can't open $lowcov_in: $!\n";
+print LOWOUT "track name=\'Low Coverage\' description=\'Coverage <20X\' color=255,0,0\n";
+while (<LOWIN>) {
+ chomp $_;
+ if ($_ =~ m/^\#/) {next;}
+ if ($_ =~ m/^[0-9]$/) {next;}
+ my @low_array = split(/\t/, $_);
+ my $lowchr = $low_array[0];
+ my $lowstart = $low_array[1];
+ my $lowstop = $low_array[2];
+ print LOWOUT "$lowchr\t$lowstart\t$lowstop\n";
+}
+close LOWOUT;
+close LOWIN;
+
+
+sub USAGE {
+ print "\nUSAGE: $0 -f <cov.fasta> -l <cap_stats.lowcov-anno.txt>\n";
+ print " -f: file in fasta coverage format.\n";
+ print " -l: cap_stats.lowcov-anno.txt generated from ExCID_getlowcov_and_annotate_exome.pl\n\n";
+ exit;
+}
View
BIN  ExCID_v1.5/VCRome_index.tgz
Binary file not shown
View
BIN  ExCID_v1.5/bin/Generate_covfasta.jar
Binary file not shown
View
BIN  ExCID_v1.5/database.tgz
Binary file not shown
View
BIN  ExCID_v1.5/external_programs/BEDTools.v2.17.0.tar.gz
Binary file not shown
View
26 ExCID_v1.5/setup.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+BASEDIR=$(cd `dirname ${0}`; pwd)
+echo "Do you wish to install BEDTools program?"
+select yn in "Yes" "No"; do
+ case $yn in
+ Yes ) tar xzvf external_programs/BEDTools.v2.17.0.tar.gz 1>>setup.log 2>>setup.log ;
+ # build the bedtools package
+ cd bedtools-2.17.0 ;
+ make 1>>setup.log 2>>setup.log ;
+ cp bin/bedtools ../bin/ ;
+ break;;
+ No ) echo "Please enter the path to the installed BEDTools bin directory (/Library/bedtools-2.17.0/bin/): " ;
+ read input_variable ;
+ cp $input_variable/bedtools $BASEDIR/bin/ ;
+ break;;
+ esac
+done
+
+cd $BASEDIR;
+printf "\nExtracting VCRome indices... ";
+tar -xzf $BASEDIR/VCRome_index.tgz;
+printf "DONE\n";
+printf "Extracting external databases... ";
+tar -xzf $BASEDIR/database.tgz;
+printf "DONE.\n\nSetup complete.\n";
View
49 README.md
@@ -1,2 +1,47 @@
-ExCID
-=====
+## About ExCID ##
+
+The Exome Coverage and Identification (ExCID) Report has been developed to analyze the sequence depth of each exome, report the average coverage across each target, and identify bases below 20X. Furthermore, the tool also reports the gene, transcript, and exon captured by the target. The report has the option to output data tracks of sample targets and coverage that can be visualized in UCSC and IGV genome browsers.
+
+OUTPUTS
+=======
+* Outputs length, average coverage, and gene annotations for targets in VCRome
+* Outputs all regions of low coverage, including length and avg. coverage
+* Output coverage track across regions of interest viewable in standard browser
+
+
+
+## Installation ##
+
+Requirements: Latest version of JAVA and PERL.
+
+1) Run setup.sh script from command line.
+ $./setup.sh
+
+ The setup script installs the bedtools version 2.17.0 (Released under GNU public license version 2 (GPL v2)) and maintained by the Quinlan Laboratory at the University of Virginia.
+
+## USAGE ##
+
+1) For using with VCrome regions run the program as:
+
+ $ perl ExCID.BatchScript.pl -f <BAM file> -m <min threshold>
+
+ Multiple Bam files can be provided eg.
+
+ $ perl ExCID.BatchScript.pl -f <BAM file1> -f <BAM file2> -f <BAM file3> -m <min threshold>
+
+ If the minimum threshold is not provided by the user then 20x coverage is assummed by default.
+
+
+2) For using with a user defined BED file:
+
+ $ perl ExCID.BatchScript.pl -f <BAM file> -m <min threshold> -i <Bed file>
+
+ Multiple Bam files can be provided eg.
+
+ $ perl ExCID.BatchScript.pl -f <BAM file1> -f <BAM file2> -f <BAM file3> -m <min threshold> -i <Bed file>
+
+ If the minimum threshold is not provided by the user then 20x coverage is assummed by default
+ The BED file will be annotated with RefSEQ and HGMD gene annotations. The RefSEQ and HGMD database was obtained in November '13.
+
+
+To update the RefSEQ and HGMD database please look at the files in database directory for the database format. These are all the entries in the respective databases.
Please sign in to comment.
Something went wrong with that request. Please try again.