Skip to content

Commit

Permalink
Merge pull request #105 from yunfeiguo/quick_fix_distance_metric
Browse files Browse the repository at this point in the history
Quick fix distance metric
  • Loading branch information
Yunfei Guo committed Feb 16, 2017
2 parents e895dc3 + 17ff26f commit 3878f86
Show file tree
Hide file tree
Showing 46 changed files with 222 additions and 40 deletions.
10 changes: 10 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,11 @@
<artifactId>htsjdk</artifactId>
<version>2.7.0</version>
</dependency>
<dependency>
<groupId>org.jgrapht</groupId>
<artifactId>jgrapht-core</artifactId>
<version>1.0.1</version>
</dependency>
<dependency>
<groupId>args4j</groupId>
<artifactId>args4j</artifactId>
Expand All @@ -115,6 +120,11 @@
<artifactId>commons-lang3</artifactId>
<version>3.3.1</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-math3</artifactId>
<version>3.6.1</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
Expand Down
118 changes: 86 additions & 32 deletions src/main/java/com/bina/varsim/tools/evaluation/VCFcompare.java

Large diffs are not rendered by default.

61 changes: 53 additions & 8 deletions src/main/java/com/bina/varsim/types/variant/Variant.java
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,11 @@ public class Variant implements Comparable<Variant>{
private volatile int hashCode; //caching hashcode
private List<Variant> compositions; //when this variant is a composite variant, this field will store constitutional variants

//additional INFO fields
private int threePrimeDistance = -1; //3' end distance with a matching variant
private int fivePrimeDistance = -1;//5' end distance with a matching variant
private int lengthDifference = -1; //length difference with a matching variant


public List<Variant> getCompositions() {
return compositions;
Expand Down Expand Up @@ -90,7 +95,6 @@ public static class Builder {
private ChrString[] chr2;
private int[] pos2;
private int[] end2;
private int end;
private Boolean isinv; //is sequence inverted? useful for interspersed dup, translocation dup
private String traid; //translocation ID
private List<Variant> compositions;
Expand Down Expand Up @@ -156,10 +160,6 @@ public Builder pos2(final int[] pos2) {
this.pos2 = pos2;
return this;
}
public Builder end(final int end) {
this.end = end;
return this;
}
public Builder end2(final int[] end2) {
this.end2 = end2;
return this;
Expand Down Expand Up @@ -197,7 +197,6 @@ private Variant(Builder builder) {
this.paternal = builder.paternal;
this.maternal = builder.maternal;
this.isPhased = builder.isPhased;
this.end = builder.end;
this.traid = builder.traid;
this.isinv = builder.isinv;
this.compositions = builder.compositions;
Expand Down Expand Up @@ -234,7 +233,6 @@ public Variant(final Variant var) {
this.chr2 = var.chr2;
this.pos2 = var.pos2;
this.end2 = var.end2;
this.end = var.end;
paternal = var.paternal;
maternal = var.maternal;
isPhased = var.isPhased;
Expand Down Expand Up @@ -388,8 +386,24 @@ public int[] getAllEnd2() {
return this.end2;
}

/**
* return 1-based end of variant depending on overall type of the variant
* for insertion, SNP, interspersed duplication, tandem duplication
* and translocation duplication, return 3' end
* otherwise, return 3' end plus length
* @return
*/
public int getEnd() {
return this.end;
switch(getType()) {
case Insertion:
case SNP:
case InterDup:
case TandemDup:
case TransDup:
return pos;
default:
return pos + maxLen() - 1;
}
}

public String getTraid() {
Expand Down Expand Up @@ -748,6 +762,18 @@ public void setAlt(final int ind, Alt alt) {
alts[ind - 1] = alt;
}

public void setThreePrimeDistance(int threePrimeDistance) {
this.threePrimeDistance = threePrimeDistance;
}

public void setFivePrimeDistance(int fivePrimeDistance) {
this.fivePrimeDistance = fivePrimeDistance;
}

public void setLengthDifference(int lengthDifference) {
this.lengthDifference = lengthDifference;
}

public String getFilter() {
return filter;
}
Expand Down Expand Up @@ -1005,6 +1031,7 @@ public void calculateExtraBase(final Sequence refSeq) {
/**
* @return a VCF record of the variant
*/
@Override
public String toString() {
return toString(getGoodPaternal(), getGoodMaternal());
}
Expand Down Expand Up @@ -1085,6 +1112,24 @@ public String toString(final int paternal, final int maternal) {
sbStr.append("SVLEN=");
sbStr.append(getLengthString());
}
/*
checking -1 is for backward compatibility
if output_distance_metric is disabled,
then these INFO fields will not be set
nor reported.
*/
if (threePrimeDistance != -1) {
sbStr.append(";3PrimeDistance=");
sbStr.append(threePrimeDistance);
}
if (fivePrimeDistance != -1) {
sbStr.append(";5PrimeDistance=");
sbStr.append(fivePrimeDistance);
}
if (lengthDifference != -1) {
sbStr.append(";LengthDifference=");
sbStr.append(lengthDifference);
}
sbStr.append("\t");

// label (GT)
Expand Down
50 changes: 50 additions & 0 deletions src/test/java/com/bina/varsim/tools/evaluation/VCFCompareTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -219,4 +219,54 @@ public void breakendEvaluationDifferentDuplicationOrientations() throws IOExcept
public void breakendEvaluationNonReciprocalBalancedWithLargeWiggle() throws IOException {
universalTestMethod("src/test/resources/validationTest/breakendTests/nonreciprocalBalancedWithLargeWiggle", new String[]{"-wig", "10"});
}
/******tests for distance-based metrics**************/
/**
* 1 SNP in TP, 1 SNP in compare, with 1-bp distance
*
*/
@Test
public void distanceSNPTest() throws IOException {
universalTestMethod("src/test/resources/validationTest/distanceMetricTests/snpDistance", new String[]{"-output_distance_metric"});
}
/**
* 1 INS in TP, 1 INS in compare, with 100-bp 3' distance, 100-bp 5' distance, 100bp length difference
*
*/
@Test
public void distanceINSTest() throws IOException {
universalTestMethod("src/test/resources/validationTest/distanceMetricTests/insDistance", new String[]{"-wig", "150","-over","0.5","-output_distance_metric"});
}
/**
* 1 INV in TP, 1 INV in compare, with 1000-bp 3' distance, 11000-bp 5' distance, 100bp length difference
*
*/
@Test
public void distanceINVTest() throws IOException {
universalTestMethod("src/test/resources/validationTest/distanceMetricTests/invDistance", new String[]{"-wig", "2000","-over","0.55","-output_distance_metric"});
}
/**
* 1 DEL in TP with 2 ALTs, 1 DEL in compare with 1 ALT, matching only one of the 2 ALTS in TP
*
*/
@Test
public void distanceDELTest() throws IOException {
universalTestMethod("src/test/resources/validationTest/distanceMetricTests/delDistance", new String[]{"-wig", "10","-over","0.5","-output_distance_metric"});
}
/**
* 1 DUP in TP, 1 DUP in compare, length the same, distance 10bp
*
*/
@Test
public void distanceDUPTest() throws IOException {
universalTestMethod("src/test/resources/validationTest/distanceMetricTests/dupDistance", new String[]{"-wig", "20","-over","0.7","-output_distance_metric"});
}
/**
* 1 DEL in TP, 2 DEL in compare, length the same, distance 30bp,10bp, respectively
* wiggle=50bp, both DEL in compare can match, but we only match the closest one
*/
@Test
public void distanceMultipleMatchingTest() throws IOException {
//disabled until global matching is implemented
//universalTestMethod("src/test/resources/validationTest/distanceMetricTests/multipleMatchingDistance", new String[]{"-wig", "50","-over","0.7","-output_distance_metric"});
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
chrX 976 . N <DEL> . . SVTYPE=DEL;SVLEN=-200 GT 1/0
Empty file.
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
X 876 . N <DEL>,<DEL> . . SVTYPE=DEL;SVLEN=-200,-200;3PrimeDistance=100;5PrimeDistance=100;LengthDifference=0 GT 1|2
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"params":{"wiggle":10,"overlapPercent":0.5,"true_vcf_filename":"src/test/resources/validationTest/distanceMetricTests/delDistance/truth.vcf","new_vcf_filename":"src/test/resources/validationTest/distanceMetricTests/delDistance/compare.vcf","overlap_percent":0.5,"bed_filename":""},"num_true_correct":{"data":{"Deletion":{"svSumCount":{"lower":-1,"upper":-1,"empty":false,"t":1,"tn":0,"fp":0,"fdr":0.0,"ppv":1.0,"spc":"NaN","fn":0,"tp":1,"f1":1.0,"tpr":1.0,"_TP":1,"_FP":0,"_TN":0,"_FN":0,"_T":1},"bin_counts":[{"lower":1,"upper":1,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":2,"upper":2,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":3,"upper":3,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":4,"upper":4,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":5,"upper":5,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":6,"upper":6,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":7,"upper":7,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":8,"upper":8,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":9,"upper":9,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":10,"upper":10,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":11,"upper":19,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":20,"upper":29,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":30,"upper":39,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":40,"upper":49,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":50,"upper":99,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":100,"upper":199,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":200,"upper":399,"empty":false,"t":1,"tn":0,"fp":0,"fdr":0.0,"ppv":1.0,"spc":"NaN","fn":0,"tp":1,"f1":1.0,"tpr":1.0,"_TP":1,"_FP":0,"_TN":0,"_FN":0,"_T":1},{"lower":400,"upper":799,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":800,"upper":1599,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":1600,"upper":3199,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":3200,"upper":6399,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":6400,"upper":12799,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":12800,"upper":25599,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":25600,"upper":51199,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":51200,"upper":102399,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":102400,"upper":500000,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":500001,"upper":1000000,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":1000001,"upper":-1,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0}],"sum_count":{"lower":-1,"upper":-1,"empty":false,"t":1,"tn":0,"fp":0,"fdr":0.0,"ppv":1.0,"spc":"NaN","fn":0,"tp":1,"f1":1.0,"tpr":1.0,"_TP":1,"_FP":0,"_TN":0,"_FN":0,"_T":1},"sum_per_base_count":{"lower":-1,"upper":-1,"empty":false,"t":200,"tn":0,"fp":0,"fdr":0.0,"ppv":1.0,"spc":"NaN","fn":0,"tp":200,"f1":1.0,"tpr":1.0,"_TP":200,"_FP":0,"_TN":0,"_FN":0,"_T":200},"bin_breaks":[1,2,3,4,5,6,7,8,9,10,19,29,39,49,99,199,399,799,1599,3199,6399,12799,25599,51199,102399,500000,1000000]}},"all_data":{"svSumCount":{"lower":-1,"upper":-1,"empty":false,"t":1,"tn":0,"fp":0,"fdr":0.0,"ppv":1.0,"spc":"NaN","fn":0,"tp":1,"f1":1.0,"tpr":1.0,"_TP":1,"_FP":0,"_TN":0,"_FN":0,"_T":1},"bin_counts":[{"lower":1,"upper":1,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":2,"upper":2,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":3,"upper":3,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":4,"upper":4,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":5,"upper":5,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":6,"upper":6,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":7,"upper":7,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":8,"upper":8,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":9,"upper":9,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":10,"upper":10,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":11,"upper":19,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":20,"upper":29,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":30,"upper":39,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":40,"upper":49,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":50,"upper":99,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":100,"upper":199,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":200,"upper":399,"empty":false,"t":1,"tn":0,"fp":0,"fdr":0.0,"ppv":1.0,"spc":"NaN","fn":0,"tp":1,"f1":1.0,"tpr":1.0,"_TP":1,"_FP":0,"_TN":0,"_FN":0,"_T":1},{"lower":400,"upper":799,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":800,"upper":1599,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":1600,"upper":3199,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":3200,"upper":6399,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":6400,"upper":12799,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":12800,"upper":25599,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":25600,"upper":51199,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":51200,"upper":102399,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":102400,"upper":500000,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":500001,"upper":1000000,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0},{"lower":1000001,"upper":-1,"empty":true,"t":0,"tn":0,"fp":0,"fdr":"NaN","ppv":"NaN","spc":"NaN","fn":0,"tp":0,"f1":"NaN","tpr":"NaN","_TP":0,"_FP":0,"_TN":0,"_FN":0,"_T":0}],"sum_count":{"lower":-1,"upper":-1,"empty":false,"t":1,"tn":0,"fp":0,"fdr":0.0,"ppv":1.0,"spc":"NaN","fn":0,"tp":1,"f1":1.0,"tpr":1.0,"_TP":1,"_FP":0,"_TN":0,"_FN":0,"_T":1},"sum_per_base_count":{"lower":-1,"upper":-1,"empty":false,"t":200,"tn":0,"fp":0,"fdr":0.0,"ppv":1.0,"spc":"NaN","fn":0,"tp":200,"f1":1.0,"tpr":1.0,"_TP":200,"_FP":0,"_TN":0,"_FN":0,"_T":200},"bin_breaks":[1,2,3,4,5,6,7,8,9,10,19,29,39,49,99,199,399,799,1599,3199,6399,12799,25599,51199,102399,500000,1000000]}}}
Empty file.
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
chrX 876 . N <DEL>,<DEL> . . SVTYPE=DEL;SVLEN=-200,-70 GT 1/2
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
MT 23355 . A <DUP:TANDEM> . . SVTYPE=DUP;SVLEN=1000
Empty file.
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
MT 23345 . N <DUP:TANDEM> . . SVTYPE=DUP;SVLEN=1000;3PrimeDistance=10;5PrimeDistance=10;LengthDifference=0 GT 0|1
Loading

0 comments on commit 3878f86

Please sign in to comment.