diff --git a/src/NGSDAnnotateCNV/main.cpp b/src/NGSDAnnotateCNV/main.cpp index e82ff5e1d..797830c4b 100644 --- a/src/NGSDAnnotateCNV/main.cpp +++ b/src/NGSDAnnotateCNV/main.cpp @@ -39,6 +39,7 @@ class ConcreteTool addFlag("test", "Uses the test database instead of on the production database."); changeLog(2020, 2, 21, "Initial version."); + changeLog(2024, 11, 28, "Imporved annotation of overlapping pathogenic CNVs."); } virtual void main() diff --git a/src/NGSDAnnotateSV/main.cpp b/src/NGSDAnnotateSV/main.cpp index bb089f753..0737a9bbd 100644 --- a/src/NGSDAnnotateSV/main.cpp +++ b/src/NGSDAnnotateSV/main.cpp @@ -17,151 +17,25 @@ class ConcreteTool virtual void setup() { - setDescription("Annotates the structural variants of a given BEDPE file by the NGSD counts."); + setDescription("Annotates the structural variants in a given BEDPE file with the count of pathogenic SVs of classes 4 and 5 found in the NGSD."); addInfile("in", "BEDPE file containing structural variants.", false); addOutfile("out", "Output BEDPE file containing annotated structural variants.", false); - addString("ps", "Processed sample name.", false); //optional addFlag("test", "Uses the test database instead of on the production database."); - addFlag("ignore_processing_system", "Use all SVs for annotation (otherwise only SVs from good samples of the same processing system are used)"); - addFlag("debug", "Provide additional information in STDOUT (e.g. query runtime)"); - addFlag("use_memory", "Creates the temporary tables in memory."); - - setExtendedDescription(QStringList() << "NOTICE: the parameter '-ignore_processing_system' will also use SVs from low quality samples (bad samples)."); changeLog(2020, 2, 21, "Initial version."); changeLog(2020, 2, 27, "Added temporary db table with same processing system."); changeLog(2020, 3, 11, "Updated match computation for INS and BND"); changeLog(2020, 3, 12, "Bugfix in match computation for INS and BND"); + changeLog(2024, 12, 17, "Refactored to only annotate pathogenic SVs from NGSD"); } virtual void main() { //init NGSD db(getFlag("test")); - QByteArray ps_name = getString("ps").toUtf8(); QTextStream out(stdout); - QTime timer; - timer.start(); - bool debug = getFlag("debug"); - bool ignore_processing_system = getFlag("ignore_processing_system"); - QTime init_timer, del_timer, dup_timer, inv_timer, ins_timer, bnd_timer; - int time_init=0, time_sum_del=0, time_sum_dup=0, time_sum_inv=0, time_sum_ins=0, time_sum_bnd=0; - int n_del=0, n_dup=0, n_inv=0, n_ins=0, n_bnd=0; - int sample_count = 0; // number of samples with the same processing system in the NGSD - - QByteArray db_engine; - if (getFlag("use_memory")) db_engine = "ENGINE=MEMORY "; // create temp dbs in memory - - - if (debug) init_timer.start(); - - // get processed sample id - QByteArray sql_exclude_prev_callset; - QString ps_id = db.processedSampleId(ps_name, false); - if (ps_id != "") - { - out << "Processed sample id: " << ps_id << endl; - - // check if processed sample has already been imported - QByteArray previous_callset_id = db.getValue("SELECT id FROM sv_callset WHERE processed_sample_id=:0", true, ps_id).toByteArray(); - - if(previous_callset_id!="") - { - sql_exclude_prev_callset = "sc.id != " + previous_callset_id + " AND "; - out << "NOTE: Processed sample '" << ps_name << "' already imported. Ignoring SVs of this sample in the annotation." << endl; - } - } - else - { - out << "WARNING: Processed sample '" << ps_name << "' not found in NGSD. Processing system cannot be determined! Ignoring processing system for annotation" << endl; - ignore_processing_system = true; - } - - // create temporary tables for each SV type filtered by the current processing system - QByteArray table_prefix; - if (!ignore_processing_system) - { - // get processing system of current sample - int processing_system_id = db.processingSystemIdFromProcessedSample(ps_name); - - // create a temp table with all valid ps ids ignoring bad/merged samples - SqlQuery temp_table = db.getQuery(); - temp_table.exec("CREATE TEMPORARY TABLE temp_valid_sv_cs_ids " + db_engine + "SELECT sc.id FROM sv_callset sc INNER JOIN processed_sample ps ON sc.processed_sample_id = ps.id WHERE " + sql_exclude_prev_callset + "ps.processing_system_id = " + QByteArray::number(processing_system_id) + " AND ps.quality != 'bad' AND NOT EXISTS (SELECT 1 FROM merged_processed_samples mps WHERE mps.processed_sample_id = sc.processed_sample_id)"); - - // get number of valid callset ids (= known samples) - sample_count = db.getValue("SELECT COUNT(*) FROM temp_valid_sv_cs_ids").toInt(); - - // generate joined tables of all SV types which were called on the same processing system.d - SqlQuery create_temp_table = db.getQuery(); - QByteArrayList table_names; - table_names << "sv_deletion" << "sv_duplication" << "sv_inversion"; - foreach (QByteArray table_name, table_names) - { - // DEL, DUP, INV - create_temp_table.exec("CREATE TEMPORARY TABLE temp_" + table_name + " " + db_engine + "SELECT sv.id, sv.sv_callset_id, sv.chr, sv.start_min, sv.start_max, sv.end_min, sv.end_max FROM " - + table_name + " sv INNER JOIN temp_valid_sv_cs_ids tt ON sv.sv_callset_id = tt.id"); - } - //INS - create_temp_table.exec("CREATE TEMPORARY TABLE temp_sv_insertion " + db_engine + "SELECT sv.id, sv.sv_callset_id, sv.chr, sv.pos, sv.ci_upper FROM sv_insertion sv INNER JOIN temp_valid_sv_cs_ids tt ON sv.sv_callset_id = tt.id"); - //BND - create_temp_table.exec("CREATE TEMPORARY TABLE temp_sv_translocation " + db_engine + "SELECT sv.id, sv.sv_callset_id, sv.chr1, sv.start1, sv.end1, sv.chr2, sv.start2, sv.end2 FROM sv_translocation sv INNER JOIN temp_valid_sv_cs_ids tt ON sv.sv_callset_id = tt.id"); - - // create indices for exact and overlap matching - SqlQuery create_index = db.getQuery(); - foreach (QByteArray table_name, table_names) - { - // DEL, DUP, INV - create_index.exec("CREATE INDEX `exact_match` ON temp_" + table_name + "(`chr`, `start_min`, `start_max`, `end_min`, `end_max`)"); - create_index.exec("CREATE INDEX `overlap_match` ON temp_" + table_name + "(`chr`, `start_min`, `end_max`)"); - } - //INS - create_index.exec("CREATE INDEX `match` ON temp_sv_insertion(`chr`, `pos`, `ci_upper`)"); - //BND - create_index.exec("CREATE INDEX `match` ON temp_sv_translocation(`chr1`, `start1`, `end1`, `chr2`, `start2`, `end2`)"); - - // set prefix for temp tables - table_prefix = "temp_"; - } - else - { - // get number of callset ids (= known samples) - sample_count = db.getValue("SELECT COUNT(*) FROM sv_callset").toInt(); - } - - // prepare a query for each SV - QByteArray select_count = "SELECT COUNT(*) FROM "; - - - QByteArray exact_match_del_dup_inv = "WHERE sv.chr = :0 AND sv.start_min <= :1 AND :2 <= sv.start_max AND sv.end_min <= :3 AND :4 <= sv.end_max"; - QByteArray contained_del_dup_inv = "WHERE sv.chr = :0 AND sv.start_min <= :1 AND :2 <= sv.end_max"; - - SqlQuery count_sv_deletion_em = db.getQuery(); - count_sv_deletion_em.prepare(select_count + table_prefix + "sv_deletion sv " + exact_match_del_dup_inv); - SqlQuery count_sv_duplication_em = db.getQuery(); - count_sv_duplication_em.prepare(select_count + table_prefix + "sv_duplication sv " + exact_match_del_dup_inv); - SqlQuery count_sv_inversion_em = db.getQuery(); - count_sv_inversion_em.prepare(select_count + table_prefix + "sv_inversion sv " + exact_match_del_dup_inv); - - SqlQuery count_sv_deletion_c = db.getQuery(); - count_sv_deletion_c.prepare(select_count + table_prefix + "sv_deletion sv " + contained_del_dup_inv); - SqlQuery count_sv_duplication_c = db.getQuery(); - count_sv_duplication_c.prepare(select_count + table_prefix + "sv_duplication sv " + contained_del_dup_inv); - SqlQuery count_sv_inversion_c = db.getQuery(); - count_sv_inversion_c.prepare(select_count + table_prefix + "sv_inversion sv " + contained_del_dup_inv); - - QByteArray match_ins = table_prefix + "sv_insertion sv WHERE sv.chr = :0 AND sv.pos <= :1 AND :2 <= (sv.pos + sv.ci_upper)"; - - SqlQuery count_sv_insertion_m = db.getQuery(); - count_sv_insertion_m.prepare(select_count + match_ins); - - QByteArray match_bnd = table_prefix + "sv_translocation sv WHERE sv.chr1 = :0 AND sv.start1 <= :1 AND :2 <= sv.end1 AND sv.chr2 = :3 AND sv.start2 <= :4 AND :5 <= sv.end2"; - - SqlQuery count_sv_translocation_em = db.getQuery(); - count_sv_translocation_em.prepare(select_count + match_bnd); - - if (debug) time_init = init_timer.elapsed(); // open BEDPE file BedpeFile svs; @@ -176,24 +50,39 @@ class ConcreteTool // check if file already contains NGSD counts QList header = svs.annotationHeaders(); QList additional_columns; - int i_ngsd_count = header.indexOf("NGSD_COUNT"); - if (i_ngsd_count < 0) - { - // no NGSD column found -> append column at the end - header.append("NGSD_COUNT"); - additional_columns.append("0 (0.0000)"); - i_ngsd_count = header.size() - 1; - } - int i_ngsd_count_overlap = header.indexOf("NGSD_COUNT_OVERLAP"); - if (i_ngsd_count_overlap < 0) + + int i_ngsd_pathogenic = header.indexOf("NGSD_PATHOGENIC_SVS"); + if (i_ngsd_pathogenic < 0) { // no NGSD column found -> append column at the end - header.append("NGSD_COUNT_OVERLAP"); - additional_columns.append("0"); - i_ngsd_count_overlap = header.size() - 1; + header.append("NGSD_PATHOGENIC_SVS"); + additional_columns.append(""); + i_ngsd_pathogenic = header.size() - 1; } output_buffer << "#CHROM_A\tSTART_A\tEND_A\tCHROM_B\tSTART_B\tEND_B\t" << header.join("\t") << "\n"; + //prepare a query for each SV type to find pathogenic SVs of class 4/5 + QByteArray select_class = "SELECT rc.class FROM `report_configuration_sv` rc, "; + + // queries to find all class 4/5 svs for a DEL/DUP/INV + QByteArray overlap_del_dup_inv = "AND sv.chr = :0 AND sv.start_min <= :1 AND :2 <= sv.start_max AND sv.end_min <= :3 AND :4 <= sv.end_max"; + + SqlQuery select_class_sv_deletion = db.getQuery(); + select_class_sv_deletion.prepare(select_class + "sv_deletion sv WHERE (rc.class='4' || rc.class='5') AND rc.sv_deletion_id=sv.id " + overlap_del_dup_inv); + SqlQuery select_class_sv_duplication = db.getQuery(); + select_class_sv_duplication.prepare(select_class + "sv_duplication sv WHERE (rc.class='4' || rc.class='5') AND rc.sv_duplication_id=sv.id " + overlap_del_dup_inv); + SqlQuery select_class_sv_inverison = db.getQuery(); + select_class_sv_inverison.prepare(select_class + "sv_inversion sv WHERE (rc.class='4' || rc.class='5') AND rc.sv_inversion_id=sv.id " + overlap_del_dup_inv); + + // query to find all class 4/5 svs for a INS + QByteArray get_class_insertion = "sv_insertion sv WHERE (rc.class='4' || rc.class='5') AND rc.sv_insertion_id=sv.id AND sv.chr = :0 AND sv.pos <= :1 AND :2 <= (sv.pos + sv.ci_upper)"; + SqlQuery select_class_sv_insertion = db.getQuery(); + select_class_sv_insertion.prepare(select_class + get_class_insertion); + + // query to find all class 4/5 svs for a BND + QByteArray get_class_translocation = "sv_translocation sv WHERE (rc.class='4' || rc.class='5') AND rc.sv_translocation_id=sv.id AND sv.chr1 = :0 AND sv.start1 <= :1 AND :2 <= sv.end1 AND sv.chr2 = :3 AND sv.start2 <= :4 AND :5 <= sv.end2"; + SqlQuery select_class_sv_translocation = db.getQuery(); + select_class_sv_translocation.prepare(select_class + get_class_translocation); // iterate over structural variants for (int i = 0; i < svs.count(); i++) @@ -207,125 +96,88 @@ class ConcreteTool // ignore SVs on special chromosomes if (svs[i].chr1().isNonSpecial() && svs[i].chr2().isNonSpecial()) { - int ngsd_count_em = 0; - int ngsd_count_overlap = 0; + int count_class_4 = 0; + int count_class_5 = 0; // annotate if(sv.type() == StructuralVariantType::BND) { //Translocation - if (debug) bnd_timer.start(); - //get matches + //get matches classifed as class 4/5 // bind values - count_sv_translocation_em.bindValue(0, sv.chr1().strNormalized(true)); - count_sv_translocation_em.bindValue(1, sv.end1()); - count_sv_translocation_em.bindValue(2, sv.start1()); - count_sv_translocation_em.bindValue(3, sv.chr2().strNormalized(true)); - count_sv_translocation_em.bindValue(4, sv.end2()); - count_sv_translocation_em.bindValue(5, sv.start2()); + select_class_sv_translocation.bindValue(0, sv.chr1().strNormalized(true)); + select_class_sv_translocation.bindValue(1, sv.end1()); + select_class_sv_translocation.bindValue(2, sv.start1()); + select_class_sv_translocation.bindValue(3, sv.chr2().strNormalized(true)); + select_class_sv_translocation.bindValue(4, sv.end2()); + select_class_sv_translocation.bindValue(5, sv.start2()); // execute query - count_sv_translocation_em.exec(); + select_class_sv_translocation.exec(); // parse result - count_sv_translocation_em.next(); - ngsd_count_em = count_sv_translocation_em.value(0).toInt(); - ngsd_count_overlap = count_sv_translocation_em.value(0).toInt(); - - n_bnd++; - if (debug) time_sum_bnd += bnd_timer.elapsed(); + for (int j = 0; j < select_class_sv_translocation.size(); j++) + { + select_class_sv_translocation.next(); + if (select_class_sv_translocation.value(0).toInt() == 4) count_class_4++; + else count_class_5++; + } } else if(sv.type() == StructuralVariantType::INS) { //Insertion - if (debug) ins_timer.start(); //get min and max position int min_pos = std::min(sv.start1(), sv.start2()); int max_pos = std::max(sv.end1(), sv.end2()); - //get exact matches + + //get matches classifed as class 4/5 // bind values - count_sv_insertion_m.bindValue(0, sv.chr1().strNormalized(true)); - count_sv_insertion_m.bindValue(1, max_pos); - count_sv_insertion_m.bindValue(2, min_pos); + select_class_sv_insertion.bindValue(0, sv.chr1().strNormalized(true)); + select_class_sv_insertion.bindValue(1, max_pos); + select_class_sv_insertion.bindValue(2, min_pos); // execute query - count_sv_insertion_m.exec(); + select_class_sv_insertion.exec(); // parse result - count_sv_insertion_m.next(); - ngsd_count_em = count_sv_insertion_m.value(0).toInt(); - ngsd_count_overlap = count_sv_insertion_m.value(0).toInt(); + for (int j = 0; j < select_class_sv_insertion.size(); j++) + { + select_class_sv_insertion.next(); + if (select_class_sv_insertion.value(0).toInt() == 4) count_class_4++; + else count_class_5++; + } - n_ins++; - if (debug) time_sum_ins += ins_timer.elapsed(); } else { //Del, Dup or Inv - // get exact matches - SqlQuery query_em = db.getQuery(); - if (sv.type() == StructuralVariantType::DEL) query_em = count_sv_deletion_em; - else if (sv.type() == StructuralVariantType::DUP) query_em = count_sv_duplication_em; - else if (sv.type() == StructuralVariantType::INV) query_em = count_sv_inversion_em; - else THROW(FileParseException, "Invalid SV type in BEDPE line."); - - if (debug) - { - if (sv.type() == StructuralVariantType::DEL) del_timer.start(); - else if (sv.type() == StructuralVariantType::DUP) dup_timer.start(); - else inv_timer.start(); - } - - // bind values - query_em.bindValue(0, sv.chr1().strNormalized(true)); - query_em.bindValue(1, sv.end1()); - query_em.bindValue(2, sv.start1()); - query_em.bindValue(3, sv.end2()); - query_em.bindValue(4, sv.start2()); - - // execute query - query_em.exec(); - - // parse result - query_em.next(); - ngsd_count_em = query_em.value(0).toInt(); - - - // get contained matches - SqlQuery query_c = db.getQuery(); - if (sv.type() == StructuralVariantType::DEL) query_c = count_sv_deletion_c; - else if (sv.type() == StructuralVariantType::DUP) query_c = count_sv_duplication_c; - else if (sv.type() == StructuralVariantType::INV) query_c = count_sv_inversion_c; + // select query according to SV type + SqlQuery query_class = db.getQuery(); + if (sv.type() == StructuralVariantType::DEL) query_class = select_class_sv_deletion; + else if (sv.type() == StructuralVariantType::DUP) query_class = select_class_sv_duplication; + else if (sv.type() == StructuralVariantType::INV) query_class = select_class_sv_inverison; else THROW(FileParseException, "Invalid SV type in BEDPE line."); + //get matches classifed as class 4/5 // bind values - query_c.bindValue(0, sv.chr1().strNormalized(true)); - query_c.bindValue(1, sv.end2()); - query_c.bindValue(2, sv.start1()); - + query_class.bindValue(0, sv.chr1().strNormalized(true)); + query_class.bindValue(1, sv.end1()); + query_class.bindValue(2, sv.start1()); + query_class.bindValue(3, sv.end2()); + query_class.bindValue(4, sv.start2()); // execute query - query_c.exec(); - + query_class.exec(); // parse result - query_c.next(); - ngsd_count_overlap = query_c.value(0).toInt(); - - if (debug) + for (int j = 0; j < query_class.size(); j++) { - if (sv.type() == StructuralVariantType::DEL) time_sum_del += del_timer.elapsed(); - else if (sv.type() == StructuralVariantType::DUP) time_sum_dup += dup_timer.elapsed(); - else time_sum_inv += inv_timer.elapsed(); + query_class.next(); + if (query_class.value(0).toInt() == 4) count_class_4++; + else count_class_5++; } - - // count SVs - if (sv.type() == StructuralVariantType::DEL) n_del++; - else if (sv.type() == StructuralVariantType::DUP) n_dup++; - else n_inv++; } // write annotations - double af = 0.00; - if (sample_count != 0) af = (double) ngsd_count_em / (double) sample_count; - sv_annotations[i_ngsd_count] = QByteArray::number(ngsd_count_em) - + " (" + QByteArray::number(af, 'f', 4) + ")"; - sv_annotations[i_ngsd_count_overlap] = QByteArray::number(ngsd_count_overlap); + if (count_class_4 != 0 || count_class_5 != 0) + { + sv_annotations[i_ngsd_pathogenic] = QByteArray::number(count_class_4) + "x class4 /" + QByteArray::number(count_class_5) + "x class5"; + } } //write annotation back to BedpeLine @@ -346,20 +198,6 @@ class ConcreteTool output_file->write(line); } output_file->close(); - - // debug summary - if (debug) - { - out << "Debug-Output: \n SQL query runtime / SVs:\n"; - out << "\t init: " << (double) time_init/1000.00 << "s \n"; - out << "\t DEL: " << (double) time_sum_del/1000.00 << "s / " << n_del << "\n"; - out << "\t DUP: " << (double) time_sum_dup/1000.00 << "s / " << n_dup << "\n"; - out << "\t INV: " << (double) time_sum_inv/1000.00 << "s / " << n_inv << "\n"; - out << "\t INS: " << (double) time_sum_ins/1000.00 << "s / " << n_ins << "\n"; - out << "\t BND: " << (double) time_sum_bnd/1000.00 << "s / " << n_bnd << "\n"; - } - - out << "finished (" << Helper::elapsedTime(timer) << ") " << endl; } }; diff --git a/src/VcfBreakMulti/main.cpp b/src/VcfBreakMulti/main.cpp index d2957beee..7f1cc3b84 100644 --- a/src/VcfBreakMulti/main.cpp +++ b/src/VcfBreakMulti/main.cpp @@ -24,6 +24,7 @@ class ConcreteTool: public ToolBase addFlag("verbose", "Writes ignored VCF format errors to stderr."); changeLog(2018, 10, 18, "Initial implementation."); + changeLog(2024, 11, 21, "Implemented handling of phased GT"); } ///Return ID from FORMAT/INFO line diff --git a/src/tools-TEST/NGSDAnnotateSV_Test.h b/src/tools-TEST/NGSDAnnotateSV_Test.h index a80eac3df..9667792bc 100644 --- a/src/tools-TEST/NGSDAnnotateSV_Test.h +++ b/src/tools-TEST/NGSDAnnotateSV_Test.h @@ -16,53 +16,10 @@ private slots: db.init(); db.executeQueriesFromFile(TESTDATA("data_in/NGSDAnnotateSV_init.sql")); - EXECUTE("NGSDAnnotateSV", "-test -debug -ps NA12878_46 -in " + TESTDATA("data_in/NGSDAnnotateSV_in1.bedpe") + " -out out/NGSDAnnotateSV_out1.bedpe"); + EXECUTE("NGSDAnnotateSV", "-test -in " + TESTDATA("data_in/NGSDAnnotateSV_in1.bedpe") + " -out out/NGSDAnnotateSV_out1.bedpe"); COMPARE_FILES("out/NGSDAnnotateSV_out1.bedpe", TESTDATA("data_out/NGSDAnnotateSV_out1.bedpe")) } - - void artifical_svs_known_sample() - { - if (!NGSD::isAvailable(true)) SKIP("Test needs access to the NGSD test database!"); - - //init - NGSD db(true); - db.init(); - db.executeQueriesFromFile(TESTDATA("data_in/NGSDAnnotateSV_init.sql")); - - EXECUTE("NGSDAnnotateSV", "-test -debug -ps NA12878_45 -in " + TESTDATA("data_in/NGSDAnnotateSV_in1.bedpe") + " -out out/NGSDAnnotateSV_out2.bedpe"); - - COMPARE_FILES("out/NGSDAnnotateSV_out2.bedpe", TESTDATA("data_out/NGSDAnnotateSV_out2.bedpe")) - } - - void artifical_svs_new_sample_ignore_ps() - { - if (!NGSD::isAvailable(true)) SKIP("Test needs access to the NGSD test database!"); - - //init - NGSD db(true); - db.init(); - db.executeQueriesFromFile(TESTDATA("data_in/NGSDAnnotateSV_init.sql")); - - EXECUTE("NGSDAnnotateSV", "-test -debug -ignore_processing_system -ps NA12878_46 -in " + TESTDATA("data_in/NGSDAnnotateSV_in1.bedpe") + " -out out/NGSDAnnotateSV_out3.bedpe"); - - COMPARE_FILES("out/NGSDAnnotateSV_out3.bedpe", TESTDATA("data_out/NGSDAnnotateSV_out3.bedpe")) - } - - void artifical_svs_unknown_sample_name() - { - if (!NGSD::isAvailable(true)) SKIP("Test needs access to the NGSD test database!"); - - //init - NGSD db(true); - db.init(); - db.executeQueriesFromFile(TESTDATA("data_in/NGSDAnnotateSV_init.sql")); - - EXECUTE("NGSDAnnotateSV", "-test -debug -ps NA12878_invalid -in " + TESTDATA("data_in/NGSDAnnotateSV_in1.bedpe") + " -out out/NGSDAnnotateSV_out3.bedpe"); - - COMPARE_FILES("out/NGSDAnnotateSV_out3.bedpe", TESTDATA("data_out/NGSDAnnotateSV_out3.bedpe")) - } - }; diff --git a/src/tools-TEST/data_in/NGSDAnnotateSV_in1.bedpe b/src/tools-TEST/data_in/NGSDAnnotateSV_in1.bedpe index c9d086f06..be8535b82 100644 --- a/src/tools-TEST/data_in/NGSDAnnotateSV_in1.bedpe +++ b/src/tools-TEST/data_in/NGSDAnnotateSV_in1.bedpe @@ -46,46 +46,46 @@ ##FILTER= ##FILTER= ##FILTER= -#CHROM_A START_A END_A CHROM_B START_B END_B ID QUAL STRAND_A STRAND_B TYPE FILTER NAME_A REF_A ALT_A NAME_B REF_B ALT_B INFO_A INFO_B FORMAT NA12878_46 -chr1 1000 1020 chr1 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS -chr1 4 4 chr1 25000 25000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS -chr3 1000 1020 chr3 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS -chr4 1000 1020 chr4 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS -chr1 1000 1020 chr1 52000 53000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS -chr1 13000 13020 chr1 22000 23000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS -chr1 500 520 chr1 1000 1000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS -chr1 1000 1020 chr1 12000 13000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS -chr1 101000 101020 chr1 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS -chr1 100004 100004 chr1 125000 125000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS -chr3 101000 101020 chr3 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS -chr4 101000 101020 chr4 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS -chr1 101000 101020 chr1 152000 153000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS -chr1 113000 113020 chr1 122000 123000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS -chr1 100500 100520 chr1 101000 101000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS -chr1 101000 101020 chr1 112000 113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS -chr1 9101000 9101020 chr1 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS -chr1 9100004 9100004 chr1 9125000 9125000 MantaINV:0:0:0:0:0:0 999 . . INV PASS -chr3 9101000 9101020 chr3 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS -chr4 9101000 9101020 chr4 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS -chr1 9101000 9101020 chr1 9152000 9153000 MantaINV:0:0:0:0:0:0 999 . . INV PASS -chr1 9113000 9113020 chr1 9122000 9123000 MantaINV:0:0:0:0:0:0 999 . . INV PASS -chr1 9100500 9100520 chr1 9101000 9101000 MantaINV:0:0:0:0:0:0 999 . . INV PASS -chr1 9101000 9101020 chr1 9112000 9113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS -chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS -chr1 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS -chr3 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS -chr3 12482455 12482455 chr1 12482455 12482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS -chr1 15482205 15482205 chr1 15482205 15482205 MantaINS:0:0:0:0:0:0 999 . . INS PASS -chr1 15482010 15482205 chr1 15482005 15482005 MantaINS:0:0:0:0:0:0 999 . . INS PASS -chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS -chr1 15482505 15482505 chr1 15482505 15482505 MantaINS:0:0:0:0:0:0 999 . . INS PASS -chr1 15482500 15482805 chr1 15482805 15482805 MantaINS:0:0:0:0:0:0 999 . . INS PASS -chr1 15482455 15482455 chr1 15482455 15482455 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS -chr1 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS -chr1 9100004 9100004 chr5 4125000 4125000 MantaBND:0:0:0:0:0:0 999 . . BND PASS -chr3 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS -chr4 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS -chr1 9101000 9101020 chr5 4152000 4153000 MantaBND:0:0:0:0:0:0 999 . . BND PASS -chr1 9113000 9113020 chr5 4122000 4123000 MantaBND:0:0:0:0:0:0 999 . . BND PASS -chr1 9100500 9100520 chr5 4101000 4101000 MantaBND:0:0:0:0:0:0 999 . . BND PASS -chr1 9101000 9101020 chr5 4112000 4113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS +#CHROM_A START_A END_A CHROM_B START_B END_B ID QUAL STRAND_A STRAND_B TYPE FILTER NAME_A REF_A ALT_A NAME_B REF_B ALT_B INFO_A INFO_B FORMAT NA12878_46 NGSD_COUNT NGSD_COUNT_OVERLAP +chr1 1000 1020 chr1 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 1 (1.0000) 3 +chr1 4 4 chr1 25000 25000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 +chr3 1000 1020 chr3 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 1 (1.0000) 1 +chr4 1000 1020 chr4 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 1 +chr1 1000 1020 chr1 52000 53000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 +chr1 13000 13020 chr1 22000 23000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 +chr1 500 520 chr1 1000 1000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 +chr1 1000 1020 chr1 12000 13000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 +chr1 101000 101020 chr1 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 1 (1.0000) 3 +chr1 100004 100004 chr1 125000 125000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 +chr3 101000 101020 chr3 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 1 (1.0000) 1 +chr4 101000 101020 chr4 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 1 +chr1 101000 101020 chr1 152000 153000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 +chr1 113000 113020 chr1 122000 123000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 +chr1 100500 100520 chr1 101000 101000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 +chr1 101000 101020 chr1 112000 113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 +chr1 9101000 9101020 chr1 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 1 (1.0000) 3 +chr1 9100004 9100004 chr1 9125000 9125000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 +chr3 9101000 9101020 chr3 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 1 (1.0000) 1 +chr4 9101000 9101020 chr4 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 1 +chr1 9101000 9101020 chr1 9152000 9153000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 +chr1 9113000 9113020 chr1 9122000 9123000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 +chr1 9100500 9100520 chr1 9101000 9101000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 +chr1 9101000 9101020 chr1 9112000 9113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 +chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 +chr1 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 +chr3 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 +chr3 12482455 12482455 chr1 12482455 12482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 +chr1 15482205 15482205 chr1 15482205 15482205 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 +chr1 15482010 15482205 chr1 15482005 15482005 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 +chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 +chr1 15482505 15482505 chr1 15482505 15482505 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 +chr1 15482500 15482805 chr1 15482805 15482805 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 +chr1 15482455 15482455 chr1 15482455 15482455 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 +chr1 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 2 (2.0000) 2 +chr1 9100004 9100004 chr5 4125000 4125000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 +chr3 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 1 (1.0000) 1 +chr4 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 +chr1 9101000 9101020 chr5 4152000 4153000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 +chr1 9113000 9113020 chr5 4122000 4123000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 +chr1 9100500 9100520 chr5 4101000 4101000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 +chr1 9101000 9101020 chr5 4112000 4113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 diff --git a/src/tools-TEST/data_in/NGSDAnnotateSV_init.sql b/src/tools-TEST/data_in/NGSDAnnotateSV_init.sql index 9c11876e8..cdd154826 100644 --- a/src/tools-TEST/data_in/NGSDAnnotateSV_init.sql +++ b/src/tools-TEST/data_in/NGSDAnnotateSV_init.sql @@ -29,6 +29,9 @@ INSERT INTO `processed_sample`(`id`, `sample_id`, `process_id`, `sequencing_run_ (4007, 1, 47, 1, '1,2,3,4', 165, 1, 'bad'), (4008, 1, 48, 1, '1,2,3,4', 165, 1, 'good'); +INSERT INTO `report_configuration` (`id`, `processed_sample_id`, `created_by`, `created_date`) VALUES +(1, 4001, 99, '2020-01-01'); + INSERT INTO `sv_callset` (`id`, `processed_sample_id`, `caller`, `caller_version`, `call_date`) VALUES (1, 4001, 'Manta', '1.6.0', '2020-01-01'), (2, 4000, 'Manta', '1.5.0', '2019-08-13'), @@ -119,5 +122,28 @@ INSERT INTO `sv_translocation` (`id`, `sv_callset_id`, `chr1`, `start1`, `end1`, (5, 3, 'chr1', 9101000, 9101020, 'chr5', 4120000, 4120000, ''), (6, 3, 'chr1', 9101000, 9101020, 'chr5', 4120000, 4120000, ''), (7, 1, 'chr3', 9101000, 9101020, 'chr5', 4112000, 4113000, ''), -(8, 1, 'chr4', 9101000, 9101020, 'chr5', 4120000, 4120000, ''); +(8, 1, 'chr4', 9101000, 9101020, 'chr5', 4120000, 4120000, ''), +(11, 1, 'chr1', 9100990, 9101010, 'chr5', 4112999, 4114000, ''); +INSERT INTO `report_configuration_sv` (`id`, `report_configuration_id`, `sv_deletion_id`, `sv_duplication_id`, `sv_insertion_id`, `sv_inversion_id`, `sv_translocation_id`, `type`, `causal`, `class`, `inheritance`, `de_novo`, `mosaic`, `compound_heterozygous`, `exclude_artefact`, `exclude_frequency`, `exclude_phenotype`, `exclude_mechanism`, `exclude_other`, `comments`, `comments2`) VALUES +(1, 1, NULL, NULL, NULL, NULL, 1, 'diagnostic variant', false, '5', 'n/a', false, false, false, false, false, false, false, false, false, false), +(2, 1, NULL, NULL, NULL, 4, NULL, 'diagnostic variant', false, '4', 'n/a', false, false, false, false, false, false, false, false, false, false), +(3, 1, NULL, NULL, 7, NULL, NULL, 'diagnostic variant', false, '5', 'n/a', false, false, false, false, false, false, false, false, false, false), +(4, 1, NULL, 41, NULL, NULL, NULL, 'diagnostic variant', false, '4', 'n/a', false, false, false, false, false, false, false, false, false, false), +(5, 1, 11, NULL, NULL, NULL, NULL, 'diagnostic variant', false, '5', 'n/a', false, false, false, false, false, false, false, false, false, false), +(6, 1, NULL, NULL, NULL, NULL, 3, 'diagnostic variant', false, '3', 'n/a', false, false, false, false, false, false, false, false, false, false), +(7, 1, NULL, NULL, NULL, 2, NULL, 'diagnostic variant', false, '4', 'n/a', false, false, false, false, false, false, false, false, false, false), +(8, 1, NULL, NULL, 1, NULL, NULL, 'diagnostic variant', false, '3', 'n/a', false, false, false, false, false, false, false, false, false, false), +(11, 1, NULL, 25, NULL, NULL, NULL, 'diagnostic variant', false, '4', 'n/a', false, false, false, false, false, false, false, false, false, false), +(21, 1, 2, NULL, NULL, NULL, NULL, 'diagnostic variant', false, '5', 'n/a', false, false, false, false, false, false, false, false, false, false), +(31, 1, NULL, NULL, NULL, NULL, 4, 'diagnostic variant', false, '3', 'n/a', false, false, false, false, false, false, false, false, false, false), +(41, 1, NULL, NULL, NULL, 1, NULL, 'diagnostic variant', false, '3', 'n/a', false, false, false, false, false, false, false, false, false, false), +(51, 1, NULL, NULL, 2, NULL, NULL, 'diagnostic variant', false, '5', 'n/a', false, false, false, false, false, false, false, false, false, false), +(61, 1, NULL, 7, NULL, NULL, NULL, 'diagnostic variant', false, '5', 'n/a', false, false, false, false, false, false, false, false, false, false), +(71, 1, 81, NULL, NULL, NULL, NULL, 'diagnostic variant', false, '5', 'n/a', false, false, false, false, false, false, false, false, false, false), +(81, 1, NULL, NULL, NULL, NULL, 7, 'diagnostic variant', false, '4', 'n/a', false, false, false, false, false, false, false, false, false, false), +(15, 1, NULL, NULL, NULL, 8, NULL, 'diagnostic variant', false, '4', 'n/a', false, false, false, false, false, false, false, false, false, false), +(25, 1, NULL, NULL, 3, NULL, NULL, 'diagnostic variant', false, '3', 'n/a', false, false, false, false, false, false, false, false, false, false), +(35, 1, NULL, 75, NULL, NULL, NULL, 'diagnostic variant', false, '4', 'n/a', false, false, false, false, false, false, false, false, false, false), +(45, 1, 15, NULL, NULL, NULL, NULL, 'diagnostic variant', false, '2', 'n/a', false, false, false, false, false, false, false, false, false, false), +(55, 1, NULL, NULL, NULL, NULL, 11, 'diagnostic variant', false, '5', 'n/a', false, false, false, false, false, false, false, false, false, false); \ No newline at end of file diff --git a/src/tools-TEST/data_out/NGSDAnnotateSV_out1.bedpe b/src/tools-TEST/data_out/NGSDAnnotateSV_out1.bedpe index 25850417d..55d6514ad 100644 --- a/src/tools-TEST/data_out/NGSDAnnotateSV_out1.bedpe +++ b/src/tools-TEST/data_out/NGSDAnnotateSV_out1.bedpe @@ -46,46 +46,46 @@ ##FILTER= ##FILTER= ##FILTER= -#CHROM_A START_A END_A CHROM_B START_B END_B ID QUAL STRAND_A STRAND_B TYPE FILTER NAME_A REF_A ALT_A NAME_B REF_B ALT_B INFO_A INFO_B FORMAT NA12878_46 NGSD_COUNT NGSD_COUNT_OVERLAP -chr1 1000 1020 chr1 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 1 (1.0000) 3 -chr1 4 4 chr1 25000 25000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 -chr3 1000 1020 chr3 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 1 (1.0000) 1 -chr4 1000 1020 chr4 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 1 -chr1 1000 1020 chr1 52000 53000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 -chr1 13000 13020 chr1 22000 23000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 -chr1 500 520 chr1 1000 1000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 -chr1 1000 1020 chr1 12000 13000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr1 101000 101020 chr1 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 1 (1.0000) 3 -chr1 100004 100004 chr1 125000 125000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 -chr3 101000 101020 chr3 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 1 (1.0000) 1 -chr4 101000 101020 chr4 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 1 -chr1 101000 101020 chr1 152000 153000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 -chr1 113000 113020 chr1 122000 123000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 -chr1 100500 100520 chr1 101000 101000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 -chr1 101000 101020 chr1 112000 113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr1 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 1 (1.0000) 3 -chr1 9100004 9100004 chr1 9125000 9125000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 -chr3 9101000 9101020 chr3 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 1 (1.0000) 1 -chr4 9101000 9101020 chr4 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 1 -chr1 9101000 9101020 chr1 9152000 9153000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 -chr1 9113000 9113020 chr1 9122000 9123000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 -chr1 9100500 9100520 chr1 9101000 9101000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 -chr1 9101000 9101020 chr1 9112000 9113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 -chr1 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 -chr3 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr3 12482455 12482455 chr1 12482455 12482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 -chr1 15482205 15482205 chr1 15482205 15482205 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 -chr1 15482010 15482205 chr1 15482005 15482005 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 -chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 -chr1 15482505 15482505 chr1 15482505 15482505 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr1 15482500 15482805 chr1 15482805 15482805 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr1 15482455 15482455 chr1 15482455 15482455 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 1 (1.0000) 1 -chr1 9100004 9100004 chr5 4125000 4125000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr3 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 1 (1.0000) 1 -chr4 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr5 4152000 4153000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9113000 9113020 chr5 4122000 4123000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9100500 9100520 chr5 4101000 4101000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr5 4112000 4113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 +#CHROM_A START_A END_A CHROM_B START_B END_B ID QUAL STRAND_A STRAND_B TYPE FILTER NAME_A REF_A ALT_A NAME_B REF_B ALT_B INFO_A INFO_B FORMAT NA12878_46 NGSD_COUNT NGSD_COUNT_OVERLAP NGSD_PATHOGENIC_SVS +chr1 1000 1020 chr1 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 1 (1.0000) 3 0x class4 /1x class5 +chr1 4 4 chr1 25000 25000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 +chr3 1000 1020 chr3 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 1 (1.0000) 1 +chr4 1000 1020 chr4 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 1 +chr1 1000 1020 chr1 52000 53000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 +chr1 13000 13020 chr1 22000 23000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 +chr1 500 520 chr1 1000 1000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 +chr1 1000 1020 chr1 12000 13000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 +chr1 101000 101020 chr1 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 1 (1.0000) 3 +chr1 100004 100004 chr1 125000 125000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 +chr3 101000 101020 chr3 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 1 (1.0000) 1 1x class4 /1x class5 +chr4 101000 101020 chr4 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 1 +chr1 101000 101020 chr1 152000 153000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 +chr1 113000 113020 chr1 122000 123000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 +chr1 100500 100520 chr1 101000 101000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 +chr1 101000 101020 chr1 112000 113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 +chr1 9101000 9101020 chr1 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 1 (1.0000) 3 +chr1 9100004 9100004 chr1 9125000 9125000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 +chr3 9101000 9101020 chr3 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 1 (1.0000) 1 +chr4 9101000 9101020 chr4 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 1 +chr1 9101000 9101020 chr1 9152000 9153000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 +chr1 9113000 9113020 chr1 9122000 9123000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 +chr1 9100500 9100520 chr1 9101000 9101000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 3 +chr1 9101000 9101020 chr1 9112000 9113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 +chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 +chr1 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 0x class4 /1x class5 +chr3 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 +chr3 12482455 12482455 chr1 12482455 12482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 0x class4 /1x class5 +chr1 15482205 15482205 chr1 15482205 15482205 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 +chr1 15482010 15482205 chr1 15482005 15482005 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 +chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (1.0000) 1 +chr1 15482505 15482505 chr1 15482505 15482505 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 +chr1 15482500 15482805 chr1 15482805 15482805 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 +chr1 15482455 15482455 chr1 15482455 15482455 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 +chr1 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 2 (2.0000) 2 0x class4 /2x class5 +chr1 9100004 9100004 chr5 4125000 4125000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 +chr3 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 1 (1.0000) 1 1x class4 /0x class5 +chr4 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 +chr1 9101000 9101020 chr5 4152000 4153000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 +chr1 9113000 9113020 chr5 4122000 4123000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 +chr1 9100500 9100520 chr5 4101000 4101000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 +chr1 9101000 9101020 chr5 4112000 4113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 diff --git a/src/tools-TEST/data_out/NGSDAnnotateSV_out2.bedpe b/src/tools-TEST/data_out/NGSDAnnotateSV_out2.bedpe deleted file mode 100644 index 17918f90e..000000000 --- a/src/tools-TEST/data_out/NGSDAnnotateSV_out2.bedpe +++ /dev/null @@ -1,91 +0,0 @@ -##fileformat=BEDPE -##fileDate=20191130 -##source=GenerateSVCandidates 1.6.0 -##reference=file:///tmp/local_ngs_data/GRCh37.fa -##contig= -##contig= -##contig= -##contig= -##contig= -##ALT= -##ALT= -##ALT= -##cmdline=/mnt/share/opt/manta-1.6.0.centos6_x86_64/bin//configManta.py --referenceFasta /tmp/local_ngs_data//GRCh37.fa --runDir /tmp/20312.1.default_srv011/megSAP_user_bioinf/vc_manta_y0Oqwr/mantaAnalysis --config /mnt/share/opt/manta-1.6.0.centos6_x86_64/bin//configManta.py.ini --outputContig --generateEvidenceBam --normalBam /tmp/20312.1.default_srv011/megSAP_user_bioinf/vc_manta_IueIgU_nocomplex.bam -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##FORMAT= -##FORMAT= -##FORMAT= -##FORMAT= -##FORMAT= -##FORMAT=0.999"> -##FILTER= -##FILTER= -##FILTER= -##FILTER= -##FILTER= -##FILTER= -##FILTER= -##FILTER= -##FILTER= -#CHROM_A START_A END_A CHROM_B START_B END_B ID QUAL STRAND_A STRAND_B TYPE FILTER NAME_A REF_A ALT_A NAME_B REF_B ALT_B INFO_A INFO_B FORMAT NA12878_46 NGSD_COUNT NGSD_COUNT_OVERLAP -chr1 1000 1020 chr1 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr1 4 4 chr1 25000 25000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr3 1000 1020 chr3 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr4 1000 1020 chr4 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr1 1000 1020 chr1 52000 53000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr1 13000 13020 chr1 22000 23000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr1 500 520 chr1 1000 1000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr1 1000 1020 chr1 12000 13000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr1 101000 101020 chr1 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr1 100004 100004 chr1 125000 125000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr3 101000 101020 chr3 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr4 101000 101020 chr4 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr1 101000 101020 chr1 152000 153000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr1 113000 113020 chr1 122000 123000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr1 100500 100520 chr1 101000 101000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr1 101000 101020 chr1 112000 113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr1 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 0 -chr1 9100004 9100004 chr1 9125000 9125000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 0 -chr3 9101000 9101020 chr3 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 0 -chr4 9101000 9101020 chr4 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr1 9152000 9153000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 0 -chr1 9113000 9113020 chr1 9122000 9123000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 0 -chr1 9100500 9100520 chr1 9101000 9101000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr1 9112000 9113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr1 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr3 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr3 12482455 12482455 chr1 12482455 12482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr1 15482205 15482205 chr1 15482205 15482205 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr1 15482010 15482205 chr1 15482005 15482005 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr1 15482505 15482505 chr1 15482505 15482505 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr1 15482500 15482805 chr1 15482805 15482805 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr1 15482455 15482455 chr1 15482455 15482455 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9100004 9100004 chr5 4125000 4125000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr3 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr4 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr5 4152000 4153000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9113000 9113020 chr5 4122000 4123000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9100500 9100520 chr5 4101000 4101000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr5 4112000 4113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 diff --git a/src/tools-TEST/data_out/NGSDAnnotateSV_out3.bedpe b/src/tools-TEST/data_out/NGSDAnnotateSV_out3.bedpe deleted file mode 100644 index 0d880b9f7..000000000 --- a/src/tools-TEST/data_out/NGSDAnnotateSV_out3.bedpe +++ /dev/null @@ -1,91 +0,0 @@ -##fileformat=BEDPE -##fileDate=20191130 -##source=GenerateSVCandidates 1.6.0 -##reference=file:///tmp/local_ngs_data/GRCh37.fa -##contig= -##contig= -##contig= -##contig= -##contig= -##ALT= -##ALT= -##ALT= -##cmdline=/mnt/share/opt/manta-1.6.0.centos6_x86_64/bin//configManta.py --referenceFasta /tmp/local_ngs_data//GRCh37.fa --runDir /tmp/20312.1.default_srv011/megSAP_user_bioinf/vc_manta_y0Oqwr/mantaAnalysis --config /mnt/share/opt/manta-1.6.0.centos6_x86_64/bin//configManta.py.ini --outputContig --generateEvidenceBam --normalBam /tmp/20312.1.default_srv011/megSAP_user_bioinf/vc_manta_IueIgU_nocomplex.bam -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##INFO= -##FORMAT= -##FORMAT= -##FORMAT= -##FORMAT= -##FORMAT= -##FORMAT=0.999"> -##FILTER= -##FILTER= -##FILTER= -##FILTER= -##FILTER= -##FILTER= -##FILTER= -##FILTER= -##FILTER= -#CHROM_A START_A END_A CHROM_B START_B END_B ID QUAL STRAND_A STRAND_B TYPE FILTER NAME_A REF_A ALT_A NAME_B REF_B ALT_B INFO_A INFO_B FORMAT NA12878_46 NGSD_COUNT NGSD_COUNT_OVERLAP -chr1 1000 1020 chr1 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 3 (0.6000) 18 -chr1 4 4 chr1 25000 25000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 18 -chr3 1000 1020 chr3 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 3 (0.6000) 3 -chr4 1000 1020 chr4 12000 13000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 3 -chr1 1000 1020 chr1 52000 53000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 18 -chr1 13000 13020 chr1 22000 23000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 18 -chr1 500 520 chr1 1000 1000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 18 -chr1 1000 1020 chr1 12000 13000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr1 101000 101020 chr1 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 3 (0.6000) 18 -chr1 100004 100004 chr1 125000 125000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 18 -chr3 101000 101020 chr3 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 3 (0.6000) 3 -chr4 101000 101020 chr4 112000 113000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 3 -chr1 101000 101020 chr1 152000 153000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 18 -chr1 113000 113020 chr1 122000 123000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 18 -chr1 100500 100520 chr1 101000 101000 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 18 -chr1 101000 101020 chr1 112000 113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr1 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 1 (0.2000) 6 -chr1 9100004 9100004 chr1 9125000 9125000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 6 -chr3 9101000 9101020 chr3 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 1 (0.2000) 1 -chr4 9101000 9101020 chr4 9112000 9113000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 1 -chr1 9101000 9101020 chr1 9152000 9153000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 6 -chr1 9113000 9113020 chr1 9122000 9123000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 6 -chr1 9100500 9100520 chr1 9101000 9101000 MantaINV:0:0:0:0:0:0 999 . . INV PASS 0 (0.0000) 6 -chr1 9101000 9101020 chr1 9112000 9113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0 -chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 3 (0.6000) 3 -chr1 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 2 (0.4000) 2 -chr3 16482455 16482455 chr1 16482455 16482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 0 (0.0000) 0 -chr3 12482455 12482455 chr1 12482455 12482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (0.2000) 1 -chr1 15482205 15482205 chr1 15482205 15482205 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (0.2000) 1 -chr1 15482010 15482205 chr1 15482005 15482005 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (0.2000) 1 -chr1 15482455 15482455 chr1 15482455 15482455 MantaINS:0:0:0:0:0:0 999 . . INS PASS 3 (0.6000) 3 -chr1 15482505 15482505 chr1 15482505 15482505 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (0.2000) 1 -chr1 15482500 15482805 chr1 15482805 15482805 MantaINS:0:0:0:0:0:0 999 . . INS PASS 1 (0.2000) 1 -chr1 15482455 15482455 chr1 15482455 15482455 MantaDUP:0:0:0:0:0:0 999 . . DUP PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 1 (0.2000) 1 -chr1 9100004 9100004 chr5 4125000 4125000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr3 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 1 (0.2000) 1 -chr4 9101000 9101020 chr5 4112000 4113000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr5 4152000 4153000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9113000 9113020 chr5 4122000 4123000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9100500 9100520 chr5 4101000 4101000 MantaBND:0:0:0:0:0:0 999 . . BND PASS 0 (0.0000) 0 -chr1 9101000 9101020 chr5 4112000 4113000 MantaDEL:0:0:0:0:0:0 999 . . DEL PASS 0 (0.0000) 0