Skip to content

Commit

Permalink
No doubling of coverage variance value.
Browse files Browse the repository at this point in the history
  • Loading branch information
jibsch committed Jan 12, 2017
1 parent 467032f commit c13dfc6
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 16 deletions.
39 changes: 24 additions & 15 deletions README.md
@@ -1,33 +1,42 @@
CLOVE: Classification of genomic fusions into structural variation events
===================
# CLOVE: Classification of genomic fusions into structural variation events


Clove is a program designed to post-process the output of sequencing data structural variation detection algorithms.

Clove scans the output of one or more sets of fusion calls for patterns of complex variations (such as balanced translocations) and summarizes fusion calls as such.

Clove also annotates the variants with read depth information from the alignment file.

----------------
INSTALLING CLOVE
----------------

## INSTALLING CLOVE

Copy the latest release from the github page.

The ...-jar-with-depdendcies.jar should run without any additional requirements

-------------
RUNNING CLOVE
-------------

## RUNNING CLOVE

Invoke CLOVE with java -jar <release.jar>
This prompts you with the follwoing parameters:
This prompts you with the following parameters:

Options (all mandatory -- input can be specified more than once):

-i <list of breakpoints> <algorithm (Socrates/Delly/Crest/Gustaf/BEDPE)>
-b <BAM file>
-c <mean coverage> <coverage>
-c <mean coverage> <coverage variance>
-o <output filename> [default: CLOVE.vcf]

An example run of CLOVE could look like this:
java -jar clove-0.11-jar-with-dependencies.jar -i my_results.txt socrates -b my_bam.bam -c 30 7 -o my_calls.vcf

`java -jar clove-0.11-jar-with-dependencies.jar -i my_results.txt socrates -b my_bam.bam -c 30 7 -o my_calls.vcf`

This will take the input in my_results.txt and my_bam.bam to produce calls in my_calls.vcf.

-----------
A FEW NOTES
-----------

## A FEW NOTES

1. The input bam file has to be sorted and indexed, as CLOVE is random accessing it.
2. The output VCF file distinguishes calls that have been classified correctly and/or pass the read depth check as "PASS" (or whatever has been provided by the original SV caller) in the filter field. All calls that failed these criteria are indicated with the "FAIL" filter. If you are interested in the "CLOVE approved" calls only, filter for anything that has not "FAIL" in the VCF entry.
3. When constructing the graph of coordinates and fusions, CLOVE discards redundant events (fusions that connect the same two nodes with identical SV type). Therefore, the output vcf is not necessarily complete with respect to the set of inputs. The algorithm will report "Events merged: X" on the command line to indicate if this has happened (X>0).
3. When constructing the graph of coordinates and fusions, CLOVE discards redundant events (fusions that connect the same two nodes with identical SV type). Therefore, the output vcf is not necessarily complete with respect to the set of inputs. The support field in the VCF ("SUP") reflects how many calls are contributing to the event. The algorithm will also report "Events merged: X" on the command line to indicate if this has happened (X>0).
4. The "coverage variance" parameter is used as a an interval around the mean: All read depths outside this interval qualify for deletions (low values) or duplications.
2 changes: 1 addition & 1 deletion src/main/java/au/edu/wehi/clove/Clove.java
Expand Up @@ -578,7 +578,7 @@ public static void main(String[] args) throws IOException {
} else if(args[argindex].equals("-c")){
try{
mean = Double.parseDouble(args[argindex + 1]);
interval = 2*Double.parseDouble(args[argindex + 2]);
interval = Double.parseDouble(args[argindex + 2]);
argindex += 3;
} catch (IllegalArgumentException e){
System.err.println("Unable to parse coverage and std.");
Expand Down

0 comments on commit c13dfc6

Please sign in to comment.