| Previous changeset 91:f387cc1580c6 (2022-02-02) Next changeset 93:8fcf31272f6e (2023-03-06) |
|
Commit message:
planemo upload commit 36be3b053802693392f935e6619ba3f2b1704e3c |
|
modified:
CHANGELOG.md gene_identification.py shm_csr.xml tests/test_shm_csr.py wrapper.sh |
|
added:
__pycache__/igm_naive_mutations.cpython-39.pyc igm_naive_mutations.py nt_overview.r sequence_overview.py split_imgt_file.py tests/__pycache__/test_shm_csr.cpython-39-pytest-7.2.0.pyc |
|
removed:
new_imgt.r sequence_overview.r test-output/IGA.pdf test-output/IGA.png test-output/IGA1_mean_n.txt test-output/IGA1_mean_value.txt test-output/IGA1_median_n.txt test-output/IGA1_median_value.txt test-output/IGA1_sum_n.txt test-output/IGA1_sum_value.txt test-output/IGA2_mean_n.txt test-output/IGA2_mean_value.txt test-output/IGA2_median_n.txt test-output/IGA2_median_value.txt test-output/IGA2_sum_n.txt test-output/IGA2_sum_value.txt test-output/IGA_mean_n.txt test-output/IGA_mean_value.txt test-output/IGA_median_n.txt test-output/IGA_median_value.txt test-output/IGA_pie.txt test-output/IGA_sum_n.txt test-output/IGA_sum_value.txt test-output/IGE_mean_n.txt test-output/IGE_mean_value.txt test-output/IGE_median_n.txt test-output/IGE_median_value.txt test-output/IGE_sum_n.txt test-output/IGE_sum_value.txt test-output/IGG.pdf test-output/IGG.png test-output/IGG1_mean_n.txt test-output/IGG1_mean_value.txt test-output/IGG1_median_n.txt test-output/IGG1_median_value.txt test-output/IGG1_sum_n.txt test-output/IGG1_sum_value.txt test-output/IGG2_mean_n.txt test-output/IGG2_mean_value.txt test-output/IGG2_median_n.txt test-output/IGG2_median_value.txt test-output/IGG2_sum_n.txt test-output/IGG2_sum_value.txt test-output/IGG3_mean_n.txt test-output/IGG3_mean_value.txt test-output/IGG3_median_n.txt test-output/IGG3_median_value.txt test-output/IGG3_sum_n.txt test-output/IGG3_sum_value.txt test-output/IGG4_mean_n.txt test-output/IGG4_mean_value.txt test-output/IGG4_median_n.txt test-output/IGG4_median_value.txt test-output/IGG4_sum_n.txt test-output/IGG4_sum_value.txt test-output/IGG_mean_n.txt test-output/IGG_mean_value.txt test-output/IGG_median_n.txt test-output/IGG_median_value.txt test-output/IGG_pie.txt test-output/IGG_sum_n.txt test-output/IGG_sum_value.txt test-output/IGM_mean_n.txt test-output/IGM_mean_value.txt test-output/IGM_median_n.txt test-output/IGM_median_value.txt test-output/IGM_sum_n.txt test-output/IGM_sum_value.txt test-output/aa_id_mutations.txt test-output/absent_aa_id.txt test-output/all_mean_n.txt test-output/all_mean_value.txt test-output/all_median_n.txt test-output/all_median_value.txt test-output/all_sum_n.txt test-output/all_sum_value.txt test-output/hotspot_analysis_mean.txt test-output/hotspot_analysis_median.txt test-output/hotspot_analysis_sum.txt test-output/motif_per_seq.txt test-output/mutation_by_id.txt test-output/shm_overview_tandem_row.txt test-output/tandem_frequency.txt test-output/tandems_by_id.txt test-output/unmatched.txt test-output/unmatched_mean_n.txt test-output/unmatched_mean_value.txt test-output/unmatched_median_n.txt test-output/unmatched_median_value.txt test-output/unmatched_sum_n.txt test-output/unmatched_sum_value.txt tests/.pytest_cache/.gitignore tests/.pytest_cache/CACHEDIR.TAG tests/.pytest_cache/README.md tests/.pytest_cache/v/cache/lastfailed tests/.pytest_cache/v/cache/nodeids tests/.pytest_cache/v/cache/stepwise tests/__pycache__/test_shm_csr.cpython-37-pytest-6.2.5.pyc tests/__pycache__/test_shm_csr.cpython-37.pyc tests/__pycache__/test_shm_csr.cpython-39-pytest-6.2.5.pyc tests/data/intermediate_files/RGYW.txt tests/data/intermediate_files/merged.txt tests/data/intermediate_files/mutation_in_motifs.txt tests/data/intermediate_files/mutationdict.txt |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f CHANGELOG.md --- a/CHANGELOG.md Wed Feb 02 10:57:36 2022 +0000 +++ b/CHANGELOG.md Mon Dec 12 12:32:44 2022 +0000 |
| b |
| @@ -1,3 +1,14 @@ +version 1.6.0 +------------- ++ Faster runtime due to faster gene identification, sequence overview creation + and IMGT TAR archive creation. ++ Two extra IMGT files are provided. One for IGM with less than 2% mutations + (naive) and one for IGM with more than 2% mutations (naive memory). ++ All IMGT files per sequence class are always provided regardless of how the + ``Fast`` option is set. Previously this had to be set to ``no``. ++ Fix a bug in sequence overview where links to unmatched sequences where not + working properly in the by_id.html file. + version 1.5.0 ------------- + Add an option to download all output files in a zip file. |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f __pycache__/igm_naive_mutations.cpython-39.pyc |
| b |
| Binary file __pycache__/igm_naive_mutations.cpython-39.pyc has changed |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f gene_identification.py --- a/gene_identification.py Wed Feb 02 10:57:36 2022 +0000 +++ b/gene_identification.py Mon Dec 12 12:32:44 2022 +0000 |
| [ |
| b'@@ -1,134 +1,123 @@\n-import re\n-import argparse\n-import time\n-starttime= int(time.time() * 1000)\n-\n-parser = argparse.ArgumentParser()\n-parser.add_argument("--input", help="The 1_Summary file from an IMGT zip file")\n-parser.add_argument("--output", help="The annotated output file to be merged back with the summary file")\n+#!/usr/bin/env python3\n \n-args = parser.parse_args()\n-\n-infile = args.input\n-#infile = "test_VH-Ca_Cg_25nt/1_Summary_test_VH-Ca_Cg_25nt_241013.txt"\n-output = args.output\n-#outfile = "identified.txt"\n-\n-dic = dict()\n-total = 0\n+import argparse\n+import re\n+from typing import Dict, Iterator, List, Tuple\n \n \n-first = True\n-IDIndex = 0\n-seqIndex = 0\n+def generate_sequence_and_id_from_summary(summary_file: str\n+ ) -> Iterator[Tuple[str, str]]:\n+ with open(summary_file, "rt") as summary:\n+ header = next(summary)\n+ column_names = header.strip("\\n").split("\\t")\n+ id_column = column_names.index("Sequence ID")\n+ sequence_column = column_names.index("Sequence")\n+ for line in summary:\n+ values = line.strip("\\n").split("\\t")\n+ id = values[id_column]\n+ try:\n+ sequence = values[sequence_column]\n+ except IndexError: # weird rows without a sequence\n+ sequence = ""\n+ yield id, sequence\n \n-with open(infile, \'r\') as f: #read all sequences into a dictionary as key = ID, value = sequence\n- for line in f:\n- total += 1\n- linesplt = line.split("\\t")\n- if first:\n- print("linesplt", linesplt)\n- IDIndex = linesplt.index("Sequence ID")\n- seqIndex = linesplt.index("Sequence")\n- first = False\n- continue\n- \n- ID = linesplt[IDIndex]\n- if len(linesplt) < 28: #weird rows without a sequence\n- dic[ID] = ""\n- else:\n- dic[ID] = linesplt[seqIndex]\n- \n-print("Number of input sequences:", len(dic))\n \n-#old cm sequence: gggagtgcatccgccccaacccttttccccctcgtctcctgtgagaattccc\n-#old cg sequence: ctccaccaagggcccatcggtcttccccctggcaccctcctccaagagcacctctgggggcacagcggccctgggctgcctggtcaaggactacttccccgaaccggtgacggtgtcgtggaactcaggcgccctgaccag\n-\n-#lambda/kappa reference sequence\n-searchstrings = {"ca": "catccccgaccagccccaaggtcttcccgctgagcctctgcagcacccagccagatgggaacgtggtcatcgcctgcctgg",\n- "cg": "ctccaccaagggcccatcggtcttccccctggcaccctcctccaagagcacctctgggggcacagcggcc",\n- "ce": "gcctccacacagagcccatccgtcttccccttgacccgctgctgcaaaaacattccctcc",\n+# old cm sequence: gggagtgcatccgccccaacccttttccccctcgtctcctgtgagaattccc\n+# old cg sequence: ctccaccaagggcccatcggtcttccccctggcaccctcctccaagagcacctctg\n+# ggggcacagcggccctgggctgcctggtcaaggactacttccccgaaccggtgacggtgtcgtggaactcagg\n+# cgccctgaccag\n+SEARCHSTRINGS = {"ca": "catccccgaccagccccaaggtcttcccgctgagcctctgcagcacccagccag"\n+ "atgggaacgtggtcatcgcctgcctgg",\n+ "cg": "ctccaccaagggcccatcggtcttccccctggcaccctcctccaagagcacctc"\n+ "tgggggcacagcggcc",\n+ "ce": "gcctccacacagagcccatccgtcttccccttgacccgctgctgcaaaaacatt"\n+ "ccctcc",\n "cm": "gggagtgcatccgccccaacc"} #new (shorter) cm sequence\n \n-compiledregex = {"ca": [],\n- "cg": [],\n- "ce": [],\n- "cm": []}\n-\n-#lambda/kappa reference sequence variable nucleotides\n-ca1 = {38: \'t\', 39: \'g\', 48: \'a\', 49: \'g\', 51: \'c\', 68: \'a\', 73: \'c\'}\n-ca2 = {38: \'g\', 39: \'a\', 48: \'c\', 49: \'c\', 51: \'a\', 68: \'g\', 73: \'a\'}\n-cg1 = {0: \'c\', 33: \'a\', 38: \'c\', 44: \'a\', 54: \'t\', 56: \'g\', 58: \'g\', 66: \'g\', 132: \'c\'}\n-cg2 = {0: \'c\', 33: \'g\', 38: \'g\', 44: \'g\', 54: \'c\', 56: \'a\', 58: \'a\', 66: \'g\', 132: \'t\'}\n-cg3 = {0: \'t\', 33: \'g\', 38: \'g\', 44: \'g\', 54: \'t\', 56: \'g\', 58: \'g\', 66: \'g\', 132: \'c\'}\n-cg4 = {0: \'t\', 33: \'g\', 38: \'g\', 44: \'g\', 54: \'c\', 56: \'a\', 58: \'a\', 66: \'c\', 132: \'c\'}\n+#lambda/kappa referesearchstringsnce sequence variable nucle'..b' cghits >= cehits: #its a cg gene\n- cg1hits = currentIDHits["cg1"]\n- cg2hits = currentIDHits["cg2"]\n- cg3hits = currentIDHits["cg3"]\n- cg4hits = currentIDHits["cg4"]\n- if cg1hits >= cg2hits and cg1hits >= cg3hits and cg1hits >= cg4hits: #cg1 gene\n- o.write(ID + "\\tIGG1\\t" + str(round_int(cg1hits / varsInCG * 100)) + "\\t" + str(round_int(cghits / possiblecg * 100)) + "\\t" + start_location[ID + "_cg"] + "\\n")\n- elif cg2hits >= cg1hits and cg2hits >= cg3hits and cg2hits >= cg4hits: #cg2 gene\n- o.write(ID + "\\tIGG2\\t" + str(round_int(cg2hits / varsInCG * 100)) + "\\t" + str(round_int(cghits / possiblecg * 100)) + "\\t" + start_location[ID + "_cg"] + "\\n")\n- elif cg3hits >= cg1hits and cg3hits >= cg2hits and cg3hits >= cg4hits: #cg3 gene\n- o.write(ID + "\\tIGG3\\t" + str(round_int(cg3hits / varsInCG * 100)) + "\\t" + str(round_int(cghits / possiblecg * 100)) + "\\t" + start_location[ID + "_cg"] + "\\n")\n- else: #cg4 gene\n- o.write(ID + "\\tIGG4\\t" + str(round_int(cg4hits / varsInCG * 100)) + "\\t" + str(round_int(cghits / possiblecg * 100)) + "\\t" + start_location[ID + "_cg"] + "\\n")\n- else: #its a cm or ce gene\n- if cmhits >= cehits:\n- o.write(ID + "\\tIGM\\t100\\t" + str(round_int(cmhits / possiblecm * 100)) + "\\t" + start_location[ID + "_cm"] + "\\n")\n- else:\n- o.write(ID + "\\tIGE\\t100\\t" + str(round_int(cehits / possiblece * 100)) + "\\t" + start_location[ID + "_ce"] + "\\n")\n- seq_write_count += 1\n-\n-print("Time: %i" % (int(time.time() * 1000) - starttime))\n-\n-print("Number of sequences written to file:", seq_write_count)\n+def main():\n+ parser = argparse.ArgumentParser()\n+ parser.add_argument("--input",\n+ help="The 1_Summary file from an IMGT zip file")\n+ parser.add_argument("--output",\n+ help="The annotated output file to be merged back "\n+ "with the summary file")\n+ args = parser.parse_args()\n+ varsInCA = float(len(list(CA1_MUTATIONS.keys())) * 2)\n+ varsInCG = float(len(list(\n+ CG1_MUTATIONS.keys())) * 2) - 2 # -2 because the sliding window doesn\'t hit the first and last nt twice\n+ subclass_vars = {\n+ "IGA1": varsInCA, "IGA2": varsInCA,\n+ "IGG1": varsInCG, "IGG2": varsInCG, "IGG3": varsInCG, "IGG4": varsInCG,\n+ "IGE": 0,\n+ "IGM": 0,\n+ }\n+ compiledregex = create_compiled_regexes()\n+ possibleca = float(len(compiledregex["ca"]))\n+ possiblecg = float(len(compiledregex["cg"]))\n+ possiblecm = float(len(compiledregex["cm"]))\n+ possiblece = float(len(compiledregex["ce"]))\n+ class_chunks = {\n+ "IGA1": possibleca, "IGA2": possibleca,\n+ "IGE": possiblece,\n+ "IGG1": possiblecg, "IGG2": possiblecg, "IGG3": possiblecg,\n+ "IGG4": possiblecg,\n+ "IGM": possiblecm\n+ }\n+ with open(args.output, "wt") as output:\n+ output.write("Sequence ID\\tbest_match\\tnt_hit_percentage\\t"\n+ "chunk_hit_percentage\\tstart_locations\\n")\n+ for id, sequence in generate_sequence_and_id_from_summary(args.input):\n+ best_match, subclass_hits, class_hits, start_locations = \\\n+ match_sequence(sequence, compiledregex)\n+ variable_nucs = subclass_vars[best_match]\n+ if variable_nucs:\n+ subclass_percentage = round(subclass_hits * 100 /\n+ variable_nucs)\n+ else:\n+ subclass_percentage = 100\n+ class_percentage = round(class_hits * 100 / class_chunks[best_match])\n+ output.write(f"{id}\\t{best_match}\\t{subclass_percentage}\\t"\n+ f"{class_percentage}\\t{start_locations}\\n")\n \n \n-\n-\n-\n+if __name__ == "__main__":\n+ main()\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f igm_naive_mutations.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/igm_naive_mutations.py Mon Dec 12 12:32:44 2022 +0000 |
| b |
| @@ -0,0 +1,46 @@ +#!/usr/bin/env python3 + +""" +Find naive mutations (< 2% mutated) for IGM genes +""" + +import argparse +import contextlib + + +def find_naive_mutations(mutation_file, naive_file, naive_memory_file, + percentage_cutoff=0.02): + # A compound with statement throws a syntax error with the included python + # 3.7.1 in the container, so use an exit stack instead. + with contextlib.ExitStack() as stack: + mutations = stack.enter_context(open(mutation_file, "rt")) + naive = stack.enter_context(open(naive_file, "wt")) + naive_memory = stack.enter_context(open(naive_memory_file, "wt")) + header = next(mutations) + naive.write(header) + naive_memory.write(header) + for line in mutations: + sequence_id, best_match, mutation_no, region_length, _ = \ + line.strip('\n').split('\t') + if best_match != "IGM": + continue + mutation_no = int(mutation_no) + region_length = int(region_length) + if (mutation_no / region_length) < percentage_cutoff: + naive.write(line) + else: + naive_memory.write(line) + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument("mutation_file", help="scatter.txt") + parser.add_argument("naive_file") + parser.add_argument("naive_memory_file") + args = parser.parse_args() + find_naive_mutations(args.mutation_file, args.naive_file, + args.naive_memory_file) + + +if __name__ == "__main__": + main() \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f new_imgt.r --- a/new_imgt.r Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| [ |
| @@ -1,40 +0,0 @@ -args <- commandArgs(trailingOnly = TRUE) - -imgt.dir = args[1] -merged.file = args[2] -gene = args[3] - -merged = read.table(merged.file, header=T, sep="\t", fill=T, stringsAsFactors=F, comment.char="", quote="") - -if(!("Sequence.ID" %in% names(merged))){ #change-o db - print("Change-O DB changing 'SEQUENCE_ID' to 'Sequence.ID'") - names(merged)[which(names[merged] == "SEQUENCE_ID")] = "Sequence.ID" -} - -if(gene != "-"){ - merged = merged[grepl(paste("^", gene, sep=""), merged$best_match),] -} - -if("best_match" %in% names(merged)){ - merged = merged[!grepl("unmatched", merged$best_match),] -} - -nrow_dat = 0 - -for(f in list.files(imgt.dir, pattern="*.txt$")){ - #print(paste("filtering", f)) - path = file.path(imgt.dir, f) - dat = read.table(path, header=T, sep="\t", fill=T, quote="", stringsAsFactors=F, check.names=FALSE, comment.char="") - - dat = dat[dat[,"Sequence ID"] %in% merged$Sequence.ID,] - - nrow_dat = nrow(dat) - - if(nrow(dat) > 0 & grepl("^8_", f)){ #change the FR1 columns to 0 in the "8_..." file - dat[,grepl("^FR1", names(dat))] = 0 - } - - write.table(dat, path, quote=F, sep="\t", row.names=F, col.names=T, na="") -} - -print(paste("Creating new zip for ", gene, "with", nrow_dat, "sequences")) |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f nt_overview.r --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/nt_overview.r Mon Dec 12 12:32:44 2022 +0000 |
| [ |
| @@ -0,0 +1,74 @@ +args <- commandArgs(trailingOnly = TRUE) + +merged.file = args[1] +outputdir = args[2] +gene.classes = unlist(strsplit(args[3], ",")) +hotspot.analysis.sum.file = args[4] +NToverview.file = paste(outputdir, "ntoverview.txt", sep="/") +empty.region.filter = args[5] + + +setwd(outputdir) + +merged = read.table(merged.file, header=T, sep="\t", fill=T, stringsAsFactors=F, quote="") +hotspot.analysis.sum = read.table(hotspot.analysis.sum.file, header=F, sep=",", fill=T, stringsAsFactors=F, quote="") + +#ACGT overview + +NToverview = merged + +if(empty.region.filter == "leader"){ + NToverview$seq = paste(NToverview$FR1.IMGT.seq, NToverview$CDR1.IMGT.seq, NToverview$FR2.IMGT.seq, NToverview$CDR2.IMGT.seq, NToverview$FR3.IMGT.seq) +} else if(empty.region.filter == "FR1"){ + NToverview$seq = paste(NToverview$CDR1.IMGT.seq, NToverview$FR2.IMGT.seq, NToverview$CDR2.IMGT.seq, NToverview$FR3.IMGT.seq) +} else if(empty.region.filter == "CDR1"){ + NToverview$seq = paste(NToverview$FR2.IMGT.seq, NToverview$CDR2.IMGT.seq, NToverview$FR3.IMGT.seq) +} else if(empty.region.filter == "FR2"){ + NToverview$seq = paste(NToverview$CDR2.IMGT.seq, NToverview$FR3.IMGT.seq) +} + +NToverview$A = nchar(gsub("[^Aa]", "", NToverview$seq)) +NToverview$C = nchar(gsub("[^Cc]", "", NToverview$seq)) +NToverview$G = nchar(gsub("[^Gg]", "", NToverview$seq)) +NToverview$T = nchar(gsub("[^Tt]", "", NToverview$seq)) + +#Nsum = data.frame(Sequence.ID="-", best_match="Sum", seq="-", A = sum(NToverview$A), C = sum(NToverview$C), G = sum(NToverview$G), T = sum(NToverview$T)) + +#NToverview = rbind(NToverview, NTsum) + +NTresult = data.frame(nt=c("A", "C", "T", "G")) + +for(clazz in gene.classes){ + print(paste("class:", clazz)) + NToverview.sub = NToverview[grepl(paste("^", clazz, sep=""), NToverview$best_match),] + print(paste("nrow:", nrow(NToverview.sub))) + new.col.x = c(sum(NToverview.sub$A), sum(NToverview.sub$C), sum(NToverview.sub$T), sum(NToverview.sub$G)) + new.col.y = sum(new.col.x) + new.col.z = round(new.col.x / new.col.y * 100, 2) + + tmp = names(NTresult) + NTresult = cbind(NTresult, data.frame(new.col.x, new.col.y, new.col.z)) + names(NTresult) = c(tmp, paste(clazz, c("x", "y", "z"), sep="")) +} + +NToverview.tmp = NToverview[,c("Sequence.ID", "best_match", "seq", "A", "C", "G", "T")] + +names(NToverview.tmp) = c("Sequence.ID", "best_match", "Sequence of the analysed region", "A", "C", "G", "T") + +write.table(NToverview.tmp, NToverview.file, quote=F, sep="\t", row.names=F, col.names=T) + +NToverview = NToverview[!grepl("unmatched", NToverview$best_match),] + +new.col.x = c(sum(NToverview$A), sum(NToverview$C), sum(NToverview$T), sum(NToverview$G)) +new.col.y = sum(new.col.x) +new.col.z = round(new.col.x / new.col.y * 100, 2) + +tmp = names(NTresult) +NTresult = cbind(NTresult, data.frame(new.col.x, new.col.y, new.col.z)) +names(NTresult) = c(tmp, paste("all", c("x", "y", "z"), sep="")) + +names(hotspot.analysis.sum) = names(NTresult) + +hotspot.analysis.sum = rbind(hotspot.analysis.sum, NTresult) + +write.table(hotspot.analysis.sum, hotspot.analysis.sum.file, quote=F, sep=",", row.names=F, col.names=F, na="0") |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f sequence_overview.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sequence_overview.py Mon Dec 12 12:32:44 2022 +0000 |
| [ |
| b'@@ -0,0 +1,257 @@\n+#!/usr/bin/env/python3\n+\n+"""Create a HTML sequence overview"""\n+\n+import argparse\n+import os\n+import typing\n+from collections import defaultdict\n+from pathlib import Path\n+from typing import Dict, Iterable, List\n+\n+\n+class SequenceTableRow(typing.NamedTuple):\n+ sequence_id: str\n+ sequence: str\n+ best_match: str\n+ functionality: str\n+\n+\n+class SequenceStats:\n+ __slots__ = ("counts", "table_rows")\n+\n+ def __init__(self):\n+ self.counts: Dict[str, int] = {\n+ "IGA1": 0,\n+ "IGA2": 0,\n+ "IGE": 0,\n+ "IGG1": 0,\n+ "IGG2": 0,\n+ "IGG3": 0,\n+ "IGG4": 0,\n+ "IGM": 0,\n+ "unmatched": 0}\n+ self.table_rows: List[SequenceTableRow] = []\n+\n+\n+def get_sequence_stats(before_unique: str,\n+ sequence_columns: List[str]):\n+ sequence_statistics = defaultdict(SequenceStats)\n+ with open(before_unique, "rt") as table:\n+ header = next(table)\n+ header_columns = header.strip("\\n").split("\\t")\n+ for line in table:\n+ values = line.strip("\\n").split("\\t")\n+ row_dict = dict(zip(header_columns, values))\n+ sequence = " ".join(row_dict[column] for column in sequence_columns)\n+ best_match = row_dict["best_match"]\n+ original_match = best_match\n+ if best_match.startswith("unmatched"):\n+ best_match = "unmatched"\n+ sequence_statistics[sequence].counts[best_match] += 1\n+ functionality = row_dict["Functionality"]\n+ sequence_statistics[sequence].table_rows.append(\n+ SequenceTableRow(row_dict["Sequence.ID"], sequence,\n+ original_match, functionality))\n+ return sequence_statistics\n+\n+\n+def get_background_color(value: str):\n+ if value in ("TRUE", "T"):\n+ return "#eafaf1"\n+ elif value in ("FALSE", "F"):\n+ return "#f9ebea"\n+ try:\n+ flt = float(value)\n+ except ValueError:\n+ return "white"\n+ if flt > 0:\n+ return "#eaecee"\n+ return "white"\n+\n+\n+def td(val):\n+ return f"<td bgcolor=\'{get_background_color(val)}\'>{val}</td>"\n+\n+\n+def tr(val: Iterable[str]):\n+ return f"<tr>{\'\'.join(td(v) for v in val)}</tr>\\n"\n+\n+\n+def make_link(link, val):\n+ return f"<a href=\'{link}\'>{val}</a>"\n+\n+\n+def tbl(df: Iterable[Iterable[str]]):\n+ return f"<table border=\'1\'>{\'\'.join(tr(v) for v in df)}</table>\\n"\n+\n+\n+def to_bool_str(cond):\n+ return "TRUE" if cond else "FALSE"\n+\n+\n+def sequence_overview(before_unique: str,\n+ outdir: str,\n+ empty_region_filter: str):\n+ os.makedirs(outdir, exist_ok=True)\n+ sequence_columns = [\n+ "FR1.IMGT.seq", "CDR1.IMGT.seq", "FR2.IMGT.seq", "CDR2.IMGT.seq",\n+ "FR3.IMGT.seq", "CDR3.IMGT.seq"]\n+ if empty_region_filter == "leader":\n+ sequence_columns = sequence_columns\n+ elif empty_region_filter == "FR1":\n+ sequence_columns = sequence_columns[1:]\n+ elif empty_region_filter == "CDR1":\n+ sequence_columns = sequence_columns[2:]\n+ elif empty_region_filter == "FR2":\n+ sequence_columns = sequence_columns[3:]\n+ else:\n+ raise ValueError(f"Unknown region filter: {empty_region_filter}")\n+ main_html_file = os.path.join(outdir, "index.html")\n+ by_id_file = os.path.join(outdir, "by_id.html")\n+ with open(main_html_file, "wt") as main_html, open(by_id_file, "wt") as by_id:\n+ main_html.write("<center><img src=\'data:image/png;base64,"\n+ "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAzElEQ"\n+ "VQoka2TwQ2CQBBFpwTshw4ImW8ogJMlUIMmhNCDxgasAi50oSXA8X"\n+ "lAjCG7aqKTzGX/vsnM31mzR0gk7tTudO5MEizpzvQ4ryUSe408J3X"\n+ "n+grE0p1rnpOamVmWsZG4rS+dzzAMsN8Hi9yyjI1JNGtxu4VxBJgL"\n+ "RLpoTKIPiW0LlwtUVRTubW2OBGUJu92cZRmdfbKQMAw8o+vi5v0fL"\n+ '..b'n sequence_stat.table_rows}\n+ functionality = ",".join(functionality_dict.keys())\n+ links: Dict[str, str] = {}\n+ for key, value in count_dict.items():\n+ name_key = "un" if key == "unmatched" else key\n+ html_file = f"{name_key}_{i}.html"\n+ links[key] = html_file\n+ if value > 0:\n+ rows = [row for row in sequence_stat.table_rows\n+ # Startswith to also get unmatched columns\n+ if row.best_match.startswith(key)]\n+ Path(outdir, html_file).write_text(tbl(rows))\n+ for row in rows:\n+ by_id.write(make_link(html_file, row.sequence_id) + "<br />\\n")\n+ iga_count = count_dict["IGA1"] + count_dict["IGA2"]\n+ igg_count = count_dict["IGG1"] + count_dict["IGG2"] + \\\n+ count_dict["IGG3"] + count_dict["IGG4"]\n+\n+ contained_classes = set(key for key, value\n+ in count_dict.items() if value > 0)\n+ if iga_count:\n+ contained_classes.add("IGA")\n+ if igg_count:\n+ contained_classes.add("IGG")\n+ main_row = [\n+ sequence, functionality,\n+ make_link(links["IGA1"], count_dict["IGA1"]),\n+ make_link(links["IGA2"], count_dict["IGA2"]),\n+ make_link(links["IGG1"], count_dict["IGG1"]),\n+ make_link(links["IGG2"], count_dict["IGG2"]),\n+ make_link(links["IGG3"], count_dict["IGG3"]),\n+ make_link(links["IGG4"], count_dict["IGG4"]),\n+ make_link(links["IGM"], count_dict["IGM"]),\n+ make_link(links["IGE"], count_dict["IGE"]),\n+ make_link(links["unmatched"], count_dict["unmatched"]),\n+ iga_count,\n+ igg_count,\n+ count_dict["IGM"],\n+ count_dict["IGE"],\n+ in_classes,\n+ to_bool_str({"IGA", "IGG"}.issubset(contained_classes)),\n+ to_bool_str({"IGA", "IGG", "IGM"}.issubset(contained_classes)),\n+ to_bool_str({"IGA", "IGG", "IGE"}.issubset(contained_classes)),\n+ to_bool_str({"IGA", "IGG", "IGM", "IGE"}.issubset(contained_classes)),\n+ to_bool_str({"IGA1", "IGA2"}.issubset(contained_classes)),\n+ to_bool_str({"IGG1", "IGG2"}.issubset(contained_classes)),\n+ to_bool_str({"IGG1", "IGG3"}.issubset(contained_classes)),\n+ to_bool_str({"IGG1", "IGG4"}.issubset(contained_classes)),\n+ to_bool_str({"IGG2", "IGG3"}.issubset(contained_classes)),\n+ to_bool_str({"IGG2", "IGG4"}.issubset(contained_classes)),\n+ to_bool_str({"IGG3", "IGG4"}.issubset(contained_classes)),\n+ to_bool_str({"IGG1", "IGG2", "IGG3"}.issubset(contained_classes)),\n+ to_bool_str({"IGG2", "IGG3", "IGG4"}.issubset(contained_classes)),\n+ to_bool_str({"IGG1", "IGG2", "IGG4"}.issubset(contained_classes)),\n+ to_bool_str({"IGG1", "IGG3", "IGG4"}.issubset(contained_classes)),\n+ to_bool_str({"IGG1", "IGG2", "IGG3", "IGG4"}.issubset(contained_classes)),\n+ ]\n+ main_html.write(tr(main_row))\n+ main_html.write("</table>")\n+\n+\n+def argument_parser() -> argparse.ArgumentParser:\n+ parser = argparse.ArgumentParser()\n+ parser.add_argument("--before-unique", help="File with the overview before unique filters")\n+ parser.add_argument("--outdir", help="Output directory")\n+ parser.add_argument("--empty-region-filter")\n+ return parser\n+\n+\n+def main():\n+ args = argument_parser().parse_args()\n+ sequence_overview(args.before_unique,\n+ args.outdir,\n+ args.empty_region_filter)\n+\n+\n+if __name__ == "__main__":\n+ main()\n\\ No newline at end of file\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f sequence_overview.r --- a/sequence_overview.r Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| [ |
| b'@@ -1,363 +0,0 @@\n-library(reshape2)\n-\n-args <- commandArgs(trailingOnly = TRUE)\n-\n-before.unique.file = args[1]\n-merged.file = args[2]\n-outputdir = args[3]\n-gene.classes = unlist(strsplit(args[4], ","))\n-hotspot.analysis.sum.file = args[5]\n-NToverview.file = paste(outputdir, "ntoverview.txt", sep="/")\n-NTsum.file = paste(outputdir, "ntsum.txt", sep="/")\n-main.html = "index.html"\n-empty.region.filter = args[6]\n-\n-\n-setwd(outputdir)\n-\n-before.unique = read.table(before.unique.file, header=T, sep="\\t", fill=T, stringsAsFactors=F, quote="")\n-merged = read.table(merged.file, header=T, sep="\\t", fill=T, stringsAsFactors=F, quote="")\n-hotspot.analysis.sum = read.table(hotspot.analysis.sum.file, header=F, sep=",", fill=T, stringsAsFactors=F, quote="")\n-\n-#before.unique = before.unique[!grepl("unmatched", before.unique$best_match),]\n-\n-if(empty.region.filter == "leader"){\n-\tbefore.unique$seq_conc = paste(before.unique$FR1.IMGT.seq, before.unique$CDR1.IMGT.seq, before.unique$FR2.IMGT.seq, before.unique$CDR2.IMGT.seq, before.unique$FR3.IMGT.seq, before.unique$CDR3.IMGT.seq)\n-} else if(empty.region.filter == "FR1"){\n-\tbefore.unique$seq_conc = paste(before.unique$CDR1.IMGT.seq, before.unique$FR2.IMGT.seq, before.unique$CDR2.IMGT.seq, before.unique$FR3.IMGT.seq, before.unique$CDR3.IMGT.seq)\n-} else if(empty.region.filter == "CDR1"){\n-\tbefore.unique$seq_conc = paste(before.unique$FR2.IMGT.seq, before.unique$CDR2.IMGT.seq, before.unique$FR3.IMGT.seq, before.unique$CDR3.IMGT.seq)\n-} else if(empty.region.filter == "FR2"){\n-\tbefore.unique$seq_conc = paste(before.unique$CDR2.IMGT.seq, before.unique$FR3.IMGT.seq, before.unique$CDR3.IMGT.seq)\n-}\n-\n-IDs = before.unique[,c("Sequence.ID", "seq_conc", "best_match", "Functionality")]\n-IDs$best_match = as.character(IDs$best_match)\n-\n-dat = data.frame(table(before.unique$seq_conc))\n-\n-names(dat) = c("seq_conc", "Freq")\n-\n-dat$seq_conc = factor(dat$seq_conc)\n-\n-dat = dat[order(as.character(dat$seq_conc)),]\n-\n-#writing html from R...\n-get.bg.color = function(val){\n-\tif(val %in% c("TRUE", "FALSE", "T", "F")){ #if its a logical value, give the background a green/red color\n-\t\treturn(ifelse(val,"#eafaf1","#f9ebea"))\n-\t} else if (!is.na(as.numeric(val))) { #if its a numerical value, give it a grey tint if its >0\n-\t\treturn(ifelse(val > 0,"#eaecee","white"))\n-\t} else {\n-\t\treturn("white")\n-\t}\n-}\n-td = function(val) {\n- return(paste("<td bgcolor=\'", get.bg.color(val), "\'>", val, "</td>", sep=""))\n-}\n-tr = function(val) { \n-\treturn(paste(c("<tr>", sapply(val, td), "</tr>"), collapse="")) \n-}\n-\n-make.link = function(id, clss, val) { \n-\tpaste("<a href=\'", clss, "_", id, ".html\'>", val, "</a>", sep="") \n-}\n-tbl = function(df) {\n-\tres = "<table border=\'1\'>"\n-\tfor(i in 1:nrow(df)){ \n-\t\tres = paste(res, tr(df[i,]), sep="")\n-\t}\n-\tres = paste(res, "</table>")\n-}\n-\n-cat("<center><img src=\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAzElEQVQoka2TwQ2CQBBFpwTshw4ImW8ogJMlUIMmhNCDxgasAi50oSXA8XlAjCG7aqKTzGX/vsnM31mzR0gk7tTudO5MEizpzvQ4ryUSe408J3Xn+grE0p1rnpOamVmWsZG4rS+dzzAMsN8Hi9yyjI1JNGtxu4VxBJgLRLpoTKIPiW0LlwtUVRTubW2OBGUJu92cZRmdfbKQMAw8o+vi5v0fLorZ7Y9waGYJjsf38DJz0O1PsEQffOcv4Sa6YYfDDJ5Obzbsp93+5VfdATueO1fdLdI0AAAAAElFTkSuQmCC\'> Please note that this tab is based on all sequences before filter unique sequences and the remove duplicates based on filters are applied. In this table only sequences occuring more than once are included. </center>", file=main.html, append=F)\n-cat("<table border=\'1\' class=\'pure-table pure-table-striped\'>", file=main.html, append=T)\n-\n-if(empty.region.filter == "leader"){\n-\tcat("<caption>FR1+CDR1+FR2+CDR2+FR3+CDR3 sequences that show up more than once</caption>", file=main.html, append=T)\n-} else if(empty.region.filter == "FR1"){\n-\tcat("<caption>CDR1+FR2+CDR2+FR3+CDR3 sequences that show up more than once</caption>", file=main.html, append=T)\n-} else if(empty.region.filter == "CDR1"){\n-\tcat("<caption>FR2+CDR2+FR3+CDR3 sequences that show up more than once</caption>", file='..b' & cg3.n > 0 & cg4.n > 0)\n-\t\n-\tin.cg.all = (cg1.n > 0 & cg2.n > 0 & cg3.n > 0 & cg4.n > 0)\n-\t\n-\t#rw = c(as.character(dat[i,"seq_conc"]), functionality, ca1.html, ca2.html, cg1.html, cg2.html, cg3.html, cg4.html, cm.html, un.html)\n-\trw = c(as.character(dat[i,"seq_conc"]), functionality, ca1.html, ca2.html, cg1.html, cg2.html, cg3.html, cg4.html, cm.html, ce.html, un.html)\n-\trw = c(rw, ca.n, cg.n, cm.n, ce.n, in.classes, in.ca.cg, in.ca.cg.cm, in.ca.cg.ce, in.ca.cg.cm.ce, in.ca1.ca2, in.cg1.cg2, in.cg1.cg3, in.cg1.cg4, in.cg2.cg3, in.cg2.cg4, in.cg3.cg4, in.cg1.cg2.cg3, in.cg2.cg3.cg4, in.cg1.cg2.cg4, in.cg1.cg3.cg4, in.cg.all)\n-\t\n-\t\n-\n-\tcat(tr(rw), file=main.html, append=T)\n-\t\n-\t\n-\tfor(i in 1:nrow(allc)){ #generate html by id\n-\t\thtml = make.link(id, allc[i,"best_match"], allc[i,"Sequence.ID"])\n-\t\tcat(paste(html, "<br />"), file=sequence.id.page, append=T)\n-\t}\n-}\n-\n-cat("</table>", file=main.html, append=T)\n-\n-print(paste("Single sequences:", single.sequences))\n-print(paste("Sequences in multiple subclasses:", in.multiple))\n-print(paste("Multiple sequences in one subclass:", multiple.in.one))\n-print(paste("Matched with unmatched:", some.unmatched))\n-print(paste("Count that should match \'matched\' sequences:", matched))\n-\n-#ACGT overview\n-\n-#NToverview = merged[!grepl("^unmatched", merged$best_match),]\n-NToverview = merged\n-\n-if(empty.region.filter == "leader"){\n-\tNToverview$seq = paste(NToverview$FR1.IMGT.seq, NToverview$CDR1.IMGT.seq, NToverview$FR2.IMGT.seq, NToverview$CDR2.IMGT.seq, NToverview$FR3.IMGT.seq)\n-} else if(empty.region.filter == "FR1"){\n-\tNToverview$seq = paste(NToverview$CDR1.IMGT.seq, NToverview$FR2.IMGT.seq, NToverview$CDR2.IMGT.seq, NToverview$FR3.IMGT.seq)\n-} else if(empty.region.filter == "CDR1"){\n-\tNToverview$seq = paste(NToverview$FR2.IMGT.seq, NToverview$CDR2.IMGT.seq, NToverview$FR3.IMGT.seq)\n-} else if(empty.region.filter == "FR2"){\n-\tNToverview$seq = paste(NToverview$CDR2.IMGT.seq, NToverview$FR3.IMGT.seq)\n-}\n-\n-NToverview$A = nchar(gsub("[^Aa]", "", NToverview$seq))\n-NToverview$C = nchar(gsub("[^Cc]", "", NToverview$seq))\n-NToverview$G = nchar(gsub("[^Gg]", "", NToverview$seq))\n-NToverview$T = nchar(gsub("[^Tt]", "", NToverview$seq))\n-\n-#Nsum = data.frame(Sequence.ID="-", best_match="Sum", seq="-", A = sum(NToverview$A), C = sum(NToverview$C), G = sum(NToverview$G), T = sum(NToverview$T))\n-\n-#NToverview = rbind(NToverview, NTsum)\n-\n-NTresult = data.frame(nt=c("A", "C", "T", "G"))\n-\n-for(clazz in gene.classes){\n-\tprint(paste("class:", clazz))\n-\tNToverview.sub = NToverview[grepl(paste("^", clazz, sep=""), NToverview$best_match),]\n-\tprint(paste("nrow:", nrow(NToverview.sub)))\n-\tnew.col.x = c(sum(NToverview.sub$A), sum(NToverview.sub$C), sum(NToverview.sub$T), sum(NToverview.sub$G))\n-\tnew.col.y = sum(new.col.x)\n-\tnew.col.z = round(new.col.x / new.col.y * 100, 2)\n-\t\n-\ttmp = names(NTresult)\n-\tNTresult = cbind(NTresult, data.frame(new.col.x, new.col.y, new.col.z))\n-\tnames(NTresult) = c(tmp, paste(clazz, c("x", "y", "z"), sep=""))\n-}\n-\n-NToverview.tmp = NToverview[,c("Sequence.ID", "best_match", "seq", "A", "C", "G", "T")]\n-\n-names(NToverview.tmp) = c("Sequence.ID", "best_match", "Sequence of the analysed region", "A", "C", "G", "T")\n-\n-write.table(NToverview.tmp, NToverview.file, quote=F, sep="\\t", row.names=F, col.names=T)\n-\n-NToverview = NToverview[!grepl("unmatched", NToverview$best_match),]\n-\n-new.col.x = c(sum(NToverview$A), sum(NToverview$C), sum(NToverview$T), sum(NToverview$G))\n-new.col.y = sum(new.col.x)\n-new.col.z = round(new.col.x / new.col.y * 100, 2)\n-\n-tmp = names(NTresult)\n-NTresult = cbind(NTresult, data.frame(new.col.x, new.col.y, new.col.z))\n-names(NTresult) = c(tmp, paste("all", c("x", "y", "z"), sep=""))\n-\n-names(hotspot.analysis.sum) = names(NTresult)\n-\n-hotspot.analysis.sum = rbind(hotspot.analysis.sum, NTresult)\n-\n-write.table(hotspot.analysis.sum, hotspot.analysis.sum.file, quote=F, sep=",", row.names=F, col.names=F, na="0")\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n-\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f shm_csr.xml --- a/shm_csr.xml Wed Feb 02 10:57:36 2022 +0000 +++ b/shm_csr.xml Mon Dec 12 12:32:44 2022 +0000 |
| b |
| @@ -1,4 +1,4 @@ -<tool id="shm_csr" name="SHM & CSR pipeline" version="1.5.0"> +<tool id="shm_csr" name="SHM & CSR pipeline" version="1.6.0"> <description></description> <requirements> <requirement type="package" version="3.7.1">python</requirement> @@ -89,7 +89,7 @@ <when value="yes"></when> <when value="no"></when> </conditional> - <param name="fast" type="select" label="Fast" help="Skips generating the new ZIP files and Change-O/Baseline" > + <param name="fast" type="select" label="Fast" help="Skips Change-O/Baseline" > <option value="yes">Yes</option> <option value="no" selected="true">No</option> </param> |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f split_imgt_file.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/split_imgt_file.py Mon Dec 12 12:32:44 2022 +0000 |
| [ |
| @@ -0,0 +1,147 @@ +#!/usr/bin/env python3 + +""" +Script to split IMGT file into several archives for each of the genes + +Rather than creating each new archive individually this script will read +the input files only once and as such enormously shorten processing time. +""" + +import argparse +import io +import os +import tarfile +import tempfile +from typing import Iterator, List, Tuple + + +def merged_txt_to_match_dict(merged: str): + with open(merged, "rt") as f: + header = next(f).strip("\n") + column_names = header.split("\t") + # For the baseline result there is no best_match column + if "best_match" in column_names: + best_match_index = column_names.index("best_match") + else: + best_match_index = None + sequence_id_index = column_names.index("Sequence.ID") + match_dict = {} + for line in f: + values = line.strip().split("\t") + sequence_id = values[sequence_id_index] + if best_match_index is not None: + best_match = values[best_match_index] + if "unmatched" in best_match: + # For some reason the table has values such as: unmatched, IGA2 + continue + else: + best_match = "" + match_dict[sequence_id] = best_match + return match_dict + + +def imgt_to_tables(imgt_file: str) -> Iterator[Tuple[str, io.TextIOWrapper]]: + print(f"opening IMGT file: {imgt_file}") + with tarfile.open(imgt_file, "r") as archive: + while True: + member = archive.next() + if member is None: + return + if member.name in {"README.txt"}: + continue + if member.name.startswith("11_"): + continue + f = archive.extractfile(member) + f_text = io.TextIOWrapper(f) + yield member.name, f_text + f_text.close() + + +def split_imgt(imgt_file: str, merged_file: str, outdir: str, genes: List[str], + prefix: str): + """ + This function creates a separate tar file for each of the gene matches + based on the merged file. Unmatched genes are left out. + :param imgt_file: The original IMGT file + :param merged_file: The merged data file generated by SHM&CSR pipeline + :param outdir: The output directory. + :param genes: The genes to split out. Use '-' for all identified genes. + :return: + """ + match_dict = merged_txt_to_match_dict(merged_file) + gene_tarfiles = [] + os.makedirs(outdir, exist_ok=True) + for gene in genes: + new_filename = f"{prefix}_{gene}.txz" if gene else f"{prefix}.txz" + gene_tarfiles.append( + tarfile.open(os.path.join(outdir, new_filename), mode="w:xz") + ) + for name, table in imgt_to_tables(imgt_file): + # Read each table one by one and per line select in which output + # files it should go. + gene_files = [] + for gene in genes: + fp, fname = tempfile.mkstemp() + # The file pointer fp will be wrapped in a python file object + # so we can ensure there remain no open files. + f = open(fp, mode="wt") + gene_files.append((gene, f, fname)) + header = next(table) + header_number_of_tabs = header.count('\t') + column_names = header.strip("\n").split("\t") + fr1_columns = [index for index, column in enumerate(column_names) + if column.startswith("FR1")] + sequence_id_index = column_names.index("Sequence ID") + for _, gene_file, _ in gene_files: + gene_file.write(header) + for line in table: + # IMGT sometimes delivers half-empty rows. + row_number_of_tabs = line.count("\t") + missing_tabs = header_number_of_tabs - row_number_of_tabs + if missing_tabs: + line = line.strip("\n") + missing_tabs * "\t" + "\n" + values = line.strip("\n").split("\t") + sequence_id = values[sequence_id_index] + match = match_dict.get(sequence_id) + if match is None: + continue + if name.startswith("8_"): + # change the FR1 columns to 0 in the "8_..." file + for index in fr1_columns: + values[index] = "0" + line = "\t".join(values) + "\n" + for gene, gene_file, _ in gene_files: + if gene in match: + gene_file.write(line) + for gene_tarfile, (_, gene_file, fname) in zip(gene_tarfiles, gene_files): + gene_file.flush() + gene_tarfile.add(fname, name) + gene_file.close() + os.remove(fname) + for gene_tarfile in gene_tarfiles: + gene_tarfile.close() + + +def argument_parser() -> argparse.ArgumentParser: + parser = argparse.ArgumentParser() + parser.add_argument("imgt_file", help="The original IMGT FILE") + parser.add_argument("merged", help="merged.txt file") + parser.add_argument("--outdir", help="output directory") + parser.add_argument( + "genes", + nargs="+", + help="The genes to split out. Use '-' for all identified genes.") + parser.add_argument("--prefix", help="Prefix for the archives and " + "directories") + return parser + + +def main(): + args = argument_parser().parse_args() + genes = ["" if gene == "-" else gene for gene in args.genes] + split_imgt(args.imgt_file, args.merged, args.outdir, genes, + args.prefix) + + +if __name__ == "__main__": + main() |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA.pdf |
| b |
| Binary file test-output/IGA.pdf has changed |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA.png |
| b |
| Binary file test-output/IGA.png has changed |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA1_mean_n.txt --- a/test-output/IGA1_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -593 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA1_mean_value.txt --- a/test-output/IGA1_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -20.6 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA1_median_n.txt --- a/test-output/IGA1_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -593 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA1_median_value.txt --- a/test-output/IGA1_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -20 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA1_sum_n.txt --- a/test-output/IGA1_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -593 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA1_sum_value.txt --- a/test-output/IGA1_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -12223 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA2_mean_n.txt --- a/test-output/IGA2_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -324 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA2_mean_value.txt --- a/test-output/IGA2_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -17.8 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA2_median_n.txt --- a/test-output/IGA2_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -324 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA2_median_value.txt --- a/test-output/IGA2_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -16.5 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA2_sum_n.txt --- a/test-output/IGA2_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -324 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA2_sum_value.txt --- a/test-output/IGA2_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -5754 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA_mean_n.txt --- a/test-output/IGA_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -917 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA_mean_value.txt --- a/test-output/IGA_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -19.6 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA_median_n.txt --- a/test-output/IGA_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -917 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA_median_value.txt --- a/test-output/IGA_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -19 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA_pie.txt --- a/test-output/IGA_pie.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,3 +0,0 @@ -Gene Freq label -IGA1 593 IGA1 - 593 -IGA2 324 IGA2 - 324 |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA_sum_n.txt --- a/test-output/IGA_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -917 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGA_sum_value.txt --- a/test-output/IGA_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -17977 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGE_mean_n.txt --- a/test-output/IGE_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -0 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGE_mean_value.txt --- a/test-output/IGE_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -0 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGE_median_n.txt --- a/test-output/IGE_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -0 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGE_median_value.txt --- a/test-output/IGE_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -0 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGE_sum_n.txt --- a/test-output/IGE_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -0 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGE_sum_value.txt --- a/test-output/IGE_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -0 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG.pdf |
| b |
| Binary file test-output/IGG.pdf has changed |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG.png |
| b |
| Binary file test-output/IGG.png has changed |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG1_mean_n.txt --- a/test-output/IGG1_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -274 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG1_mean_value.txt --- a/test-output/IGG1_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -20 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG1_median_n.txt --- a/test-output/IGG1_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -274 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG1_median_value.txt --- a/test-output/IGG1_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -18 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG1_sum_n.txt --- a/test-output/IGG1_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -274 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG1_sum_value.txt --- a/test-output/IGG1_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -5492 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG2_mean_n.txt --- a/test-output/IGG2_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -150 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG2_mean_value.txt --- a/test-output/IGG2_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -18.5 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG2_median_n.txt --- a/test-output/IGG2_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -150 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG2_median_value.txt --- a/test-output/IGG2_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -17 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG2_sum_n.txt --- a/test-output/IGG2_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -150 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG2_sum_value.txt --- a/test-output/IGG2_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -2777 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG3_mean_n.txt --- a/test-output/IGG3_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -26 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG3_mean_value.txt --- a/test-output/IGG3_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -14.9 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG3_median_n.txt --- a/test-output/IGG3_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -26 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG3_median_value.txt --- a/test-output/IGG3_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -13.5 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG3_sum_n.txt --- a/test-output/IGG3_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -26 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG3_sum_value.txt --- a/test-output/IGG3_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -388 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG4_mean_n.txt --- a/test-output/IGG4_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -19 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG4_mean_value.txt --- a/test-output/IGG4_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -19.9 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG4_median_n.txt --- a/test-output/IGG4_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -19 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG4_median_value.txt --- a/test-output/IGG4_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -18 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG4_sum_n.txt --- a/test-output/IGG4_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -19 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG4_sum_value.txt --- a/test-output/IGG4_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -379 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG_mean_n.txt --- a/test-output/IGG_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -469 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG_mean_value.txt --- a/test-output/IGG_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -19.3 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG_median_n.txt --- a/test-output/IGG_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -469 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG_median_value.txt --- a/test-output/IGG_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -18 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG_pie.txt --- a/test-output/IGG_pie.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,5 +0,0 @@ -Gene Freq label -IGG1 274 IGG1 - 274 -IGG2 150 IGG2 - 150 -IGG3 26 IGG3 - 26 -IGG4 19 IGG4 - 19 |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG_sum_n.txt --- a/test-output/IGG_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -469 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGG_sum_value.txt --- a/test-output/IGG_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -9036 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGM_mean_n.txt --- a/test-output/IGM_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -1 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGM_mean_value.txt --- a/test-output/IGM_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -0 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGM_median_n.txt --- a/test-output/IGM_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -1 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGM_median_value.txt --- a/test-output/IGM_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -0 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGM_sum_n.txt --- a/test-output/IGM_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -1 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/IGM_sum_value.txt --- a/test-output/IGM_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -0 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/aa_id_mutations.txt --- a/test-output/aa_id_mutations.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| b'@@ -1,1577 +0,0 @@\n-ID\tbest_match\t1\t2\t3\t4\t5\t6\t7\t8\t9\t10\t11\t12\t13\t14\t15\t16\t17\t18\t19\t20\t21\t22\t23\t24\t25\t26\t27\t28\t29\t30\t31\t32\t33\t34\t35\t36\t37\t38\t39\t40\t41\t42\t43\t44\t45\t46\t47\t48\t49\t50\t51\t52\t53\t54\t55\t56\t57\t58\t59\t60\t61\t62\t63\t64\t65\t66\t67\t68\t69\t70\t71\t72\t73\t74\t75\t76\t77\t78\t79\t80\t81\t82\t83\t84\t85\t86\t87\t88\t89\t90\t91\t92\t93\t94\t95\t96\t97\t98\t99\t100\t101\t102\t103\t104\n-JY8QFUQ01A0005\tIGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t0\t0\t0\t0\t1\t0\t0\t0\t0\t1\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A004N\tIGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t0\t3\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t1\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t0\t2\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A006G\tIGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t1\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t1\t0\t0\t0\t2\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t2\t0\t0\t2\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t1\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A018V\tIGA1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t1\t0\t0\t0\t1\t2\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t1\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t1\t0\t1\t0\t0\t0\t0\t0\t0\t3\t0\t1\t0\n-JY8QFUQ01A019O\tIGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t2\t1\t1\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t1\t0\t1\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t1\t1\t2\t0\t0\t0\t0\t0\t0\t1\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A01KX\tIGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t1\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t1\t0\t0\t0\t0\t2\t0\t1\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t3\t0\t1\t2\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t1\t0\t0\t0\n-JY8QFUQ01A0207\tIGG2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t1\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t2\t1\t0\t0\t1\t0\t1\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\n-JY8QFUQ01A02HL\tIGA1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t1\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A02KS\tIGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t1\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A02XZ\tIGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A03E3\tIGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t3\t0\t0\t0\t0\t0\t2\t0\t3\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A03N6\tIGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t2\t2\t0\t1\t1\t0\t0\t0\t0\t2\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t1\t1\t0\t0\t0\t0\t2\t0\t1\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t2\t1\t0\t0\t1\t2\t0\t0\t0\t0\t0\t0\t0\t1\t0\t1\t0\t0\t0\t0\t0\t0\t1\t0\t2\t0\t0\t0\n-JY8QFUQ01A08XO\tIGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A0939\tIGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t1\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A09OY\tIGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t1\t0\t0\t0\t0\t1\t0\t0\t1\t0\t0\t0\t1\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A0C2Y\tIGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t1\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t1\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0'..b'\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t1\t1\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t1\t0\t0\t0\t0\t1\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\n-JY8QFUQ01DG2P7\tunmatched, IGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t1\t0\t1\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DG5KX\tunmatched, IGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t1\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t1\t1\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DG6GC\tunmatched, IGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t2\t1\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DHXHT\tunmatched, IGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t0\t3\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t1\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t0\t2\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DI39D\tunmatched, IGA1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DIBNC\tunmatched, IGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DJFIZ\tunmatched, IGG1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t1\t0\t0\t0\t0\t3\t2\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t1\t2\t3\t3\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t2\t0\t0\t1\t2\t0\t0\t0\t2\t0\t0\t0\n-JY8QFUQ01DLDLD\tunmatched, IGA1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DMF0A\tunmatched, IGA1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t1\t0\t0\t0\t0\t0\t3\t0\t2\t2\t1\t2\t0\t0\t0\t0\t0\t2\t1\t0\t0\t0\t0\t0\t0\t0\t2\t2\t1\t2\t2\t0\t0\t0\t0\t3\t0\t2\t0\t0\t0\t1\t0\t1\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t1\t0\t3\t0\t0\t0\t0\t0\t0\t0\t0\t3\t0\t1\t0\n-JY8QFUQ01DOVL5\tunmatched, IGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t1\t2\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t1\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DPT8R\tunmatched, IGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t1\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DUD3U\tunmatched, IGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t1\t3\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t2\t2\t0\t0\t0\t0\t1\t1\t0\t1\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t1\t0\t0\t0\t1\t1\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DV4HU\tunmatched, IGG2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t2\t1\t0\t0\t0\t2\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t1\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t1\t1\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DV8LF\tunmatched, IGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DVBU0\tunmatched, IGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t2\t0\t0\t0\t1\t2\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DXDOM\tunmatched, IGA2\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t0\t0\t0\t0\t1\t2\t1\t1\t1\t1\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t1\t0\t0\t2\t1\t1\t1\t0\t0\t0\t1\t2\t2\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t1\t0\t1\t1\t1\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t0\t1\t0\t0\t0\t0\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/absent_aa_id.txt --- a/test-output/absent_aa_id.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| b'@@ -1,1577 +0,0 @@\n-ID\tcdr1length\tcdr2length\tbest_match\t1\t2\t3\t4\t5\t6\t7\t8\t9\t10\t11\t12\t13\t14\t15\t16\t17\t18\t19\t20\t21\t22\t23\t24\t25\t26\t27\t28\t29\t30\t31\t32\t33\t34\t35\t36\t37\t38\t39\t40\t41\t42\t43\t44\t45\t46\t47\t48\t49\t50\t51\t52\t53\t54\t55\t56\t57\t58\t59\t60\t61\t62\t63\t64\t65\t66\t67\t68\t69\t70\t71\t72\t73\t74\t75\t76\t77\t78\t79\t80\t81\t82\t83\t84\t85\t86\t87\t88\t89\t90\t91\t92\t93\t94\t95\t96\t97\t98\t99\t100\t101\t102\t103\t104\n-JY8QFUQ01A0005\t10\t7\tIGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A004N\t10\t7\tIGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A006G\t10\t7\tIGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A018V\t10\t7\tIGA1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A019O\t8\t8\tIGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A01KX\t8\t8\tIGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A0207\t8\t8\tIGG2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A02HL\t8\t8\tIGA1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A02KS\t8\t8\tIGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A02XZ\t8\t8\tIGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A03E3\t8\t8\tIGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A03N6\t9\t7\tIGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A08XO\t10\t7\tIGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A0939\t10\t9\tIGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A09OY\t8\t8\tIGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01A0C2Y\t8\t8\tIGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1'..b'1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DG2P7\t8\t7\tunmatched, IGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DG5KX\t8\t7\tunmatched, IGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DG6GC\t8\t8\tunmatched, IGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DHXHT\t10\t7\tunmatched, IGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DI39D\t8\t8\tunmatched, IGA1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DIBNC\t10\t7\tunmatched, IGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DJFIZ\t8\t8\tunmatched, IGG1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DLDLD\t8\t8\tunmatched, IGA1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DMF0A\t10\t7\tunmatched, IGA1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DOVL5\t8\t8\tunmatched, IGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DPT8R\t8\t7\tunmatched, IGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DUD3U\t8\t8\tunmatched, IGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DV4HU\t8\t8\tunmatched, IGG2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DV8LF\t8\t8\tunmatched, IGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DVBU0\t8\t7\tunmatched, IGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n-JY8QFUQ01DXDOM\t8\t7\tunmatched, IGA2\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t0\t0\t0\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\t1\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/all_mean_n.txt --- a/test-output/all_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -1387 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/all_mean_value.txt --- a/test-output/all_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -19.5 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/all_median_n.txt --- a/test-output/all_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -1387 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/all_median_value.txt --- a/test-output/all_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -18 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/all_sum_n.txt --- a/test-output/all_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -1387 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/all_sum_value.txt --- a/test-output/all_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -27013 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/hotspot_analysis_mean.txt --- a/test-output/hotspot_analysis_mean.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,4 +0,0 @@ -RGYW (%),3,19.6,15.3,4,20.6,19.4,3,17.8,16.9,3,19.3,15.5,3,20.0,15.0,3,18.5,16.2,2,14.9,13.4,3,19.9,15.1,0,0,0,0,0,0,3,18.4,16.3,3,19.5,15.4 -WRCY (%),3,19.6,15.3,4,20.6,19.4,3,17.8,16.9,3,19.3,15.5,3,20.0,15.0,3,18.5,16.2,2,14.9,13.4,3,19.9,15.1,0,0,0,0,0,0,3,18.4,16.3,3,19.5,15.4 -WA (%),3,19.6,15.3,3,20.6,14.6,3,17.8,16.9,3,19.3,15.5,3,20.0,15.0,3,18.5,16.2,3,14.9,20.1,3,19.9,15.1,0,0,0,0,0,0,3,18.4,16.3,3,19.5,15.4 -TW (%),2,19.6,10.2,2,20.6,9.7,2,17.8,11.2,2,19.3,10.4,2,20.0,10.0,2,18.5,10.8,1,14.9,6.7,2,19.9,10.1,0,0,0,0,0,0,2,18.4,10.9,2,19.5,10.3 |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/hotspot_analysis_median.txt --- a/test-output/hotspot_analysis_median.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,4 +0,0 @@ -RGYW (%),3,19.0,15.8,3,20.0,15.0,2,16.5,12.1,3,18.0,16.7,3,18.0,16.7,3,17.0,17.6,2,13.5,14.8,3,18.0,16.7,0,0,0,0,0,0,2,16.0,12.5,3,18.0,16.7 -WRCY (%),3,19.0,15.8,3,20.0,15.0,3,16.5,18.2,3,18.0,16.7,3,18.0,16.7,3,17.0,17.6,1,13.5,7.4,2,18.0,11.1,0,0,0,0,0,0,3,16.0,18.8,3,18.0,16.7 -WA (%),3,19.0,15.8,3,20.0,15.0,2,16.5,12.1,3,18.0,16.7,3,18.0,16.7,3,17.0,17.6,3,13.5,22.2,2,18.0,11.1,0,0,0,0,0,0,2,16.0,12.5,3,18.0,16.7 -TW (%),2,19.0,10.5,2,20.0,10.0,1,16.5,6.1,2,18.0,11.1,2,18.0,11.1,2,17.0,11.8,1,13.5,7.4,2,18.0,11.1,0,0,0,0,0,0,2,16.0,12.5,2,18.0,11.1 |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/hotspot_analysis_sum.txt --- a/test-output/hotspot_analysis_sum.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,4 +0,0 @@ -RGYW (%),3163,17977.0,17.6,2186,12223.0,17.9,978,5754.0,17.0,1524,9036.0,16.9,910,5492.0,16.6,485,2777.0,17.5,63,388.0,16.2,65,379.0,17.2,0,0,0,0,0,0,602,3486.0,17.3,4686,27013.0,17.3 -WRCY (%),2984,17977.0,16.6,2060,12223.0,16.9,924,5754.0,16.1,1444,9036.0,16.0,888,5492.0,16.2,455,2777.0,16.4,52,388.0,13.4,50,379.0,13.2,0,0,0,0,0,0,614,3486.0,17.6,4428,27013.0,16.4 -WA (%),2610,17977.0,14.5,1715,12223.0,14.0,895,5754.0,15.6,1420,9036.0,15.7,859,5492.0,15.6,433,2777.0,15.6,67,388.0,17.3,61,379.0,16.1,0,0,0,0,0,0,540,3486.0,15.5,4030,27013.0,14.9 -TW (%),1561,17977.0,8.7,1044,12223.0,8.5,517,5754.0,9.0,818,9036.0,9.1,474,5492.0,8.6,265,2777.0,9.5,34,388.0,8.8,46,379.0,12.1,0,0,0,0,0,0,330,3486.0,9.5,2379,27013.0,8.8 |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/motif_per_seq.txt --- a/test-output/motif_per_seq.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| b'@@ -1,1577 +0,0 @@\n-ID\tRGYW\tWRCY\tWA\tTW\n-JY8QFUQ01A0005\t5.5\t2.5\t0.5\t0.5\n-JY8QFUQ01A004N\t5.5\t2.0\t2.5\t4.0\n-JY8QFUQ01A006G\t4.666666666666666\t2.333333333333333\t4.166666666666666\t3.833333333333333\n-JY8QFUQ01A018V\t6.666666666666667\t7.333333333333334\t3.0\t3.0\n-JY8QFUQ01A019O\t5.75\t2.083333333333333\t1.5833333333333333\t0.5833333333333333\n-JY8QFUQ01A01KX\t3.0000000000000004\t4.333333333333334\t5.833333333333333\t2.833333333333333\n-JY8QFUQ01A0207\t2.8333333333333335\t3.8333333333333335\t2.1666666666666665\t2.1666666666666665\n-JY8QFUQ01A02HL\t0.5\t2.5\t0.5\t0.5\n-JY8QFUQ01A02KS\t3.0\t3.3333333333333335\t3.3333333333333335\t0.3333333333333333\n-JY8QFUQ01A02XZ\t2.583333333333333\t0.5833333333333333\t0.9166666666666665\t1.9166666666666665\n-JY8QFUQ01A03E3\t3.75\t5.083333333333333\t1.7499999999999998\t1.4166666666666665\n-JY8QFUQ01A03N6\t6.499999999999999\t6.166666666666667\t5.833333333333332\t1.4999999999999998\n-JY8QFUQ01A08XO\t0\t0\t0\t0\n-JY8QFUQ01A0939\t2.5\t2.833333333333333\t2.333333333333333\t1.3333333333333333\n-JY8QFUQ01A09OY\t1.3333333333333333\t3.1666666666666665\t2.5\t1.0\n-JY8QFUQ01A0C2Y\t2.833333333333333\t2.0\t3.833333333333333\t0.3333333333333333\n-JY8QFUQ01A0C33\t4.333333333333333\t1.5\t2.333333333333333\t0.8333333333333333\n-JY8QFUQ01A0C4X\t2.666666666666667\t2.0\t1.6666666666666665\t1.6666666666666665\n-JY8QFUQ01A0D2K\t2.0\t0.5\t3.0\t2.5\n-JY8QFUQ01A0D5E\t5.0\t1.5\t1.5\t3.0\n-JY8QFUQ01A0DA8\t3.8333333333333335\t1.5\t5.833333333333333\t3.833333333333333\n-JY8QFUQ01A0DCS\t3.5\t5.166666666666667\t3.6666666666666665\t1.6666666666666665\n-JY8QFUQ01A0EF3\t0.25\t4.25\t0.75\t0.75\n-JY8QFUQ01A0ESJ\t2.333333333333333\t3.6666666666666665\t3.0\t1.9999999999999998\n-JY8QFUQ01A0FII\t1.5833333333333333\t2.25\t4.083333333333334\t2.0833333333333335\n-JY8QFUQ01A0FO5\t2.833333333333333\t0.8333333333333333\t1.3333333333333333\t1.0\n-JY8QFUQ01A0GVR\t6.666666666666667\t6.0\t4.666666666666666\t2.6666666666666665\n-JY8QFUQ01A0GVY\t4.833333333333333\t5.0\t3.333333333333333\t2.833333333333333\n-JY8QFUQ01A0HBK\t0\t0\t0\t0\n-JY8QFUQ01A0IZI\t4.583333333333333\t2.25\t1.5833333333333333\t2.5833333333333335\n-JY8QFUQ01A0LAJ\t3.833333333333333\t3.5\t6.333333333333333\t1.3333333333333333\n-JY8QFUQ01A0LBC\t3.833333333333334\t4.666666666666666\t6.499999999999999\t4.0\n-JY8QFUQ01A0LEW\t2.333333333333333\t1.0\t0.8333333333333333\t0.8333333333333333\n-JY8QFUQ01A0LZ5\t5.333333333333334\t4.666666666666666\t3.0\t1.0\n-JY8QFUQ01A0N2E\t0\t0\t0\t0\n-JY8QFUQ01A0N8H\t1.0\t3.333333333333333\t2.333333333333333\t0.3333333333333333\n-JY8QFUQ01A0OC8\t0.0\t1.0\t4.0\t2.0\n-JY8QFUQ01A0OMH\t2.8333333333333335\t2.5\t3.333333333333333\t2.333333333333333\n-JY8QFUQ01A0OTP\t3.6666666666666665\t1.6666666666666665\t3.5\t2.1666666666666665\n-JY8QFUQ01A0QXW\t0\t0\t0\t0\n-JY8QFUQ01A0RJS\t2.833333333333333\t2.0\t3.833333333333333\t0.3333333333333333\n-JY8QFUQ01A0S1H\t2.583333333333333\t4.583333333333333\t2.9166666666666665\t0.9166666666666665\n-JY8QFUQ01A0TAV\t0.0\t2.5\t2.5\t1.0\n-JY8QFUQ01A0TNI\t2.833333333333333\t4.833333333333333\t2.6666666666666665\t3.6666666666666665\n-JY8QFUQ01A0UZS\t3.8333333333333335\t5.833333333333334\t2.1666666666666665\t2.1666666666666665\n-JY8QFUQ01A0VIE\t2.25\t3.75\t3.75\t3.25\n-JY8QFUQ01A0WDV\t2.8333333333333335\t4.0\t3.833333333333333\t1.3333333333333333\n-JY8QFUQ01A0WZB\t3.0\t5.0\t3.5\t2.5\n-JY8QFUQ01A0X8W\t3.3333333333333335\t0.3333333333333333\t1.1666666666666665\t3.1666666666666665\n-JY8QFUQ01A0XE3\t3.0000000000000004\t4.333333333333334\t4.833333333333333\t2.833333333333333\n-JY8QFUQ01A0Z64\t3.3333333333333335\t2.3333333333333335\t1.1666666666666665\t1.1666666666666665\n-JY8QFUQ01A0ZW5\t6.0\t3.3333333333333335\t4.499999999999999\t2.1666666666666665\n-JY8QFUQ01A0ZX6\t2.0\t3.333333333333333\t0.8333333333333333\t0.8333333333333333\n-JY8QFUQ01A110D\t0.0\t3.0\t0.5\t0.5\n-JY8QFUQ01A12BY\t1.5\t3.166666666666667\t2.666666666666667\t0.6666666666666666\n-JY8QFUQ01A12KV\t4.833333333333333\t6.0\t3.833333333333333\t1.3333333333333333\n-JY8QFUQ01A12V0\t3.5\t3.5\t4.0\t1.0\n-JY8QFUQ01A14EE\t6.166666666666666\t2.0\t6.166666666666667\t4.666666666666667\n-JY8QFUQ01A152R\t1.5\t3.5\t3.5\t2.5\n-JY8QFUQ01A15L6\t5.999999999999999\t5.833333333333333\t5.333333333333333\t2.8333333333333335\n-JY8QFUQ01A15SR\t11.833333333333334\t6.166666666666666\t4.6666'..b'8QFUQ01C3QHH\t1.5\t1.5\t0.5\t2.5\n-JY8QFUQ01C4MHW\t1.8333333333333333\t1.8333333333333333\t2.333333333333333\t0.0\n-JY8QFUQ01C5Q2O\t2.1666666666666665\t0.8333333333333333\t0.6666666666666666\t1.3333333333333333\n-JY8QFUQ01C8QWZ\t1.8333333333333333\t1.5\t2.3333333333333335\t0.3333333333333333\n-JY8QFUQ01C92F8\t1.0\t3.333333333333333\t2.333333333333333\t0.3333333333333333\n-JY8QFUQ01C966Y\t0.8333333333333333\t1.5\t1.8333333333333333\t1.8333333333333333\n-JY8QFUQ01C98A9\t1.8333333333333333\t2.833333333333333\t1.3333333333333333\t0.0\n-JY8QFUQ01CANL1\t2.6666666666666665\t1.5\t2.6666666666666665\t3.1666666666666665\n-JY8QFUQ01CD8ZK\t6.166666666666666\t2.0\t6.166666666666667\t4.666666666666667\n-JY8QFUQ01CD9VK\t2.0\t3.3333333333333335\t0.3333333333333333\t0.3333333333333333\n-JY8QFUQ01CDZ5R\t2.25\t3.75\t3.75\t3.25\n-JY8QFUQ01CE8P9\t3.0833333333333335\t2.0833333333333335\t3.4166666666666665\t1.4166666666666665\n-JY8QFUQ01CF06T\t2.0\t3.333333333333333\t0.8333333333333333\t0.8333333333333333\n-JY8QFUQ01CG8U2\t2.833333333333333\t4.0\t0.8333333333333333\t0.3333333333333333\n-JY8QFUQ01CGLTX\t3.0\t2.5\t2.5\t2.0\n-JY8QFUQ01CGQFF\t3.3333333333333335\t2.5\t4.333333333333333\t2.833333333333333\n-JY8QFUQ01CHDDF\t6.0\t4.0\t2.0\t1.0\n-JY8QFUQ01CHKLB\t0.8333333333333333\t0.5\t2.333333333333333\t1.3333333333333333\n-JY8QFUQ01CHW93\t4.583333333333334\t2.5833333333333335\t0.9166666666666665\t0.9166666666666665\n-JY8QFUQ01CII5W\t2.6666666666666665\t5.166666666666666\t6.333333333333334\t3.833333333333333\n-JY8QFUQ01CINZT\t0.3333333333333333\t1.0\t1.3333333333333333\t0.3333333333333333\n-JY8QFUQ01CJLXK\t1.0\t5.0\t3.5\t1.4999999999999998\n-JY8QFUQ01CJT9B\t4.833333333333334\t6.0\t4.833333333333334\t2.333333333333333\n-JY8QFUQ01CK1VY\t9.666666666666666\t4.666666666666666\t2.5\t2.1666666666666665\n-JY8QFUQ01CKN3U\t1.9166666666666665\t3.25\t4.916666666666666\t2.9166666666666665\n-JY8QFUQ01CLP4K\t3.5\t4.833333333333334\t1.8333333333333333\t1.8333333333333333\n-JY8QFUQ01CNCW4\t0.5\t0.0\t0.5\t2.0\n-JY8QFUQ01CO019\t0.8333333333333333\t7.333333333333333\t4.166666666666666\t1.6666666666666665\n-JY8QFUQ01CPVUP\t2.833333333333333\t2.333333333333333\t5.166666666666666\t2.6666666666666665\n-JY8QFUQ01CPYJ0\t2.25\t3.25\t1.75\t1.75\n-JY8QFUQ01CQH14\t3.3333333333333335\t3.3333333333333335\t1.6666666666666665\t0.6666666666666666\n-JY8QFUQ01CST8T\t3.666666666666667\t2.0\t1.1666666666666665\t2.1666666666666665\n-JY8QFUQ01CU1XI\t3.8333333333333335\t3.5\t1.3333333333333333\t0.3333333333333333\n-JY8QFUQ01CU5CB\t1.8333333333333333\t3.5\t2.833333333333333\t0.8333333333333333\n-JY8QFUQ01CUGFD\t6.666666666666666\t4.0\t4.166666666666666\t4.166666666666667\n-JY8QFUQ01CURPS\t5.916666666666666\t4.583333333333334\t2.75\t1.7499999999999998\n-JY8QFUQ01CY2WW\t0.0\t1.0\t4.0\t2.0\n-JY8QFUQ01CY6MC\t3.0\t5.0\t1.0\t1.0\n-JY8QFUQ01CYWC2\t4.333333333333333\t2.0\t2.333333333333333\t1.3333333333333333\n-JY8QFUQ01DA9FW\t2.0\t2.0\t1.0\t0.0\n-JY8QFUQ01DA9S4\t0\t0\t0\t0\n-JY8QFUQ01DC4QI\t1.25\t5.75\t2.25\t0.75\n-JY8QFUQ01DC8OC\t6.583333333333333\t7.583333333333333\t3.916666666666667\t1.9166666666666665\n-JY8QFUQ01DCPGQ\t1.75\t1.75\t5.25\t2.25\n-JY8QFUQ01DEKWC\t3.5\t3.5\t1.0\t1.0\n-JY8QFUQ01DG2P7\t1.8333333333333333\t1.5\t2.3333333333333335\t0.3333333333333333\n-JY8QFUQ01DG5KX\t1.1666666666666665\t2.833333333333333\t1.9999999999999998\t3.0\n-JY8QFUQ01DG6GC\t1.5\t3.5000000000000004\t3.5\t1.4999999999999998\n-JY8QFUQ01DHXHT\t5.5\t2.0\t2.5\t4.0\n-JY8QFUQ01DI39D\t0.5\t0.0\t0.5\t2.0\n-JY8QFUQ01DIBNC\t0\t0\t0\t0\n-JY8QFUQ01DJFIZ\t6.416666666666666\t8.416666666666666\t4.083333333333334\t3.0833333333333335\n-JY8QFUQ01DLDLD\t0.3333333333333333\t0.5\t1.8333333333333333\t0.3333333333333333\n-JY8QFUQ01DMF0A\t6.916666666666666\t5.416666666666666\t6.249999999999999\t2.416666666666667\n-JY8QFUQ01DOVL5\t3.833333333333333\t3.333333333333333\t2.6666666666666665\t1.1666666666666665\n-JY8QFUQ01DPT8R\t0.8333333333333333\t0.8333333333333333\t1.3333333333333333\t1.0\n-JY8QFUQ01DUD3U\t6.833333333333333\t7.166666666666666\t4.0\t3.0\n-JY8QFUQ01DV4HU\t3.0\t5.333333333333334\t3.333333333333333\t3.3333333333333335\n-JY8QFUQ01DV8LF\t2.25\t0.25\t0.75\t1.75\n-JY8QFUQ01DVBU0\t2.1666666666666665\t0.8333333333333333\t0.6666666666666666\t1.3333333333333333\n-JY8QFUQ01DXDOM\t6.583333333333333\t4.75\t6.083333333333334\t3.583333333333333\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/mutation_by_id.txt --- a/test-output/mutation_by_id.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| b'@@ -1,1577 +0,0 @@\n-Sequence.ID\tVRegionMutations\tVRegionNucleotides\ttransitionMutations\ttransversionMutations\ttransitionMutationsAtGC\ttransitionMutationsAtAT\tsilentMutationsFR\tnonSilentMutationsFR\tsilentMutationsCDR\tnonSilentMutationsCDR\n-JY8QFUQ01A0005\t18\t216\t12\t6\t11\t1\t6\t6\t2\t4\n-JY8QFUQ01A004N\t20\t216\t10\t10\t4\t6\t2\t10\t2\t6\n-JY8QFUQ01A006G\t32\t216\t20\t12\t11\t9\t10\t12\t3\t7\n-JY8QFUQ01A018V\t31\t216\t19\t12\t12\t7\t7\t14\t5\t5\n-JY8QFUQ01A019O\t19\t213\t10\t9\t6\t4\t2\t10\t0\t7\n-JY8QFUQ01A01KX\t29\t213\t18\t11\t8\t10\t6\t13\t3\t7\n-JY8QFUQ01A0207\t16\t213\t6\t10\t4\t2\t2\t8\t0\t6\n-JY8QFUQ01A02HL\t13\t213\t9\t4\t8\t1\t3\t5\t3\t2\n-JY8QFUQ01A02KS\t14\t213\t9\t5\t6\t3\t3\t7\t1\t3\n-JY8QFUQ01A02XZ\t10\t213\t6\t4\t3\t3\t3\t2\t1\t4\n-JY8QFUQ01A03E3\t21\t213\t14\t7\t8\t6\t4\t8\t3\t6\n-JY8QFUQ01A03N6\t39\t213\t22\t17\t11\t11\t8\t19\t2\t10\n-JY8QFUQ01A08XO\t0\t216\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A0939\t15\t222\t7\t8\t4\t3\t7\t3\t0\t5\n-JY8QFUQ01A09OY\t12\t213\t6\t6\t5\t1\t2\t5\t1\t4\n-JY8QFUQ01A0C2Y\t18\t213\t12\t6\t8\t4\t3\t4\t4\t7\n-JY8QFUQ01A0C33\t13\t213\t5\t8\t3\t2\t2\t3\t0\t8\n-JY8QFUQ01A0C4X\t13\t213\t4\t9\t3\t1\t2\t3\t0\t8\n-JY8QFUQ01A0D2K\t10\t213\t4\t6\t0\t4\t0\t2\t2\t6\n-JY8QFUQ01A0D5E\t28\t212\t14\t14\t11\t3\t5\t10\t2\t11\n-JY8QFUQ01A0DA8\t23\t213\t12\t11\t4\t8\t5\t11\t4\t3\n-JY8QFUQ01A0DCS\t22\t213\t12\t10\t6\t6\t4\t9\t0\t9\n-JY8QFUQ01A0EF3\t12\t213\t8\t4\t7\t1\t4\t3\t1\t4\n-JY8QFUQ01A0ESJ\t17\t213\t8\t9\t5\t3\t4\t7\t0\t6\n-JY8QFUQ01A0FII\t26\t213\t15\t11\t8\t7\t5\t9\t3\t9\n-JY8QFUQ01A0FO5\t11\t213\t6\t5\t2\t4\t4\t4\t0\t3\n-JY8QFUQ01A0GVR\t24\t216\t17\t7\t10\t7\t9\t5\t4\t6\n-JY8QFUQ01A0GVY\t30\t213\t22\t8\t15\t7\t8\t9\t4\t9\n-JY8QFUQ01A0HBK\t0\t213\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A0IZI\t18\t213\t11\t7\t7\t4\t3\t5\t0\t10\n-JY8QFUQ01A0LAJ\t29\t219\t15\t14\t8\t7\t4\t14\t1\t10\n-JY8QFUQ01A0LBC\t31\t213\t14\t17\t7\t7\t7\t12\t1\t11\n-JY8QFUQ01A0LEW\t9\t213\t5\t4\t2\t3\t2\t4\t3\t0\n-JY8QFUQ01A0LZ5\t20\t213\t14\t6\t11\t3\t4\t5\t2\t9\n-JY8QFUQ01A0N2E\t0\t213\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A0N8H\t13\t222\t9\t4\t5\t4\t2\t6\t0\t5\n-JY8QFUQ01A0OC8\t12\t212\t6\t6\t2\t4\t3\t5\t0\t4\n-JY8QFUQ01A0OMH\t26\t213\t16\t10\t12\t4\t9\t8\t2\t7\n-JY8QFUQ01A0OTP\t15\t209\t10\t5\t3\t7\t6\t4\t1\t4\n-JY8QFUQ01A0QXW\t0\t210\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A0RJS\t17\t212\t11\t6\t7\t4\t3\t4\t3\t7\n-JY8QFUQ01A0S1H\t16\t213\t10\t6\t4\t6\t5\t3\t5\t3\n-JY8QFUQ01A0TAV\t12\t213\t4\t8\t2\t2\t2\t5\t1\t4\n-JY8QFUQ01A0TNI\t24\t213\t12\t12\t7\t5\t8\t11\t0\t5\n-JY8QFUQ01A0UZS\t20\t213\t12\t8\t8\t4\t2\t11\t2\t5\n-JY8QFUQ01A0VIE\t23\t213\t16\t7\t8\t8\t5\t12\t1\t5\n-JY8QFUQ01A0WDV\t18\t210\t10\t8\t6\t4\t5\t7\t0\t6\n-JY8QFUQ01A0WZB\t34\t210\t20\t14\t11\t9\t11\t9\t3\t11\n-JY8QFUQ01A0X8W\t10\t213\t5\t5\t2\t3\t5\t1\t1\t3\n-JY8QFUQ01A0XE3\t27\t211\t17\t10\t8\t9\t6\t12\t2\t7\n-JY8QFUQ01A0Z64\t9\t213\t7\t2\t5\t2\t1\t3\t0\t5\n-JY8QFUQ01A0ZW5\t27\t216\t15\t12\t7\t8\t3\t13\t2\t9\n-JY8QFUQ01A0ZX6\t12\t213\t8\t4\t5\t3\t4\t3\t1\t4\n-JY8QFUQ01A110D\t14\t213\t8\t6\t6\t2\t3\t8\t1\t2\n-JY8QFUQ01A12BY\t14\t213\t6\t8\t4\t2\t1\t5\t1\t7\n-JY8QFUQ01A12KV\t29\t213\t17\t12\t11\t6\t8\t11\t1\t9\n-JY8QFUQ01A12V0\t28\t213\t18\t10\t13\t5\t6\t13\t2\t7\n-JY8QFUQ01A14EE\t30\t213\t20\t10\t8\t12\t8\t10\t1\t11\n-JY8QFUQ01A152R\t19\t213\t12\t7\t8\t4\t4\t7\t1\t7\n-JY8QFUQ01A15L6\t31\t215\t17\t14\t6\t11\t3\t17\t3\t8\n-JY8QFUQ01A15SR\t48\t216\t21\t27\t13\t8\t6\t17\t1\t24\n-JY8QFUQ01A16XV\t0\t213\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01A17D9\t17\t213\t10\t7\t6\t4\t2\t7\t2\t6\n-JY8QFUQ01A17TV\t14\t210\t9\t5\t3\t6\t2\t7\t1\t4\n-JY8QFUQ01A18L5\t12\t213\t7\t5\t4\t3\t3\t3\t2\t4\n-JY8QFUQ01A1963\t12\t212\t8\t4\t5\t3\t2\t2\t1\t7\n-JY8QFUQ01A1ALH\t22\t216\t15\t7\t6\t9\t3\t10\t1\t8\n-JY8QFUQ01A1AYP\t14\t213\t6\t8\t4\t2\t5\t1\t2\t6\n-JY8QFUQ01A1BK7\t14\t213\t10\t4\t6\t4\t2\t5\t2\t5\n-JY8QFUQ01A1BT3\t24\t210\t16\t8\t11\t5\t7\t12\t2\t3\n-JY8QFUQ01A1CLZ\t18\t216\t11\t7\t8\t3\t6\t4\t1\t7\n-JY8QFUQ01A1CTT\t15\t213\t9\t6\t7\t2\t2\t4\t0\t9\n-JY8QFUQ01A1DJR\t14\t213\t11\t3\t8\t3\t2\t5\t2\t5\n-JY8QFUQ01A1DVA\t35\t213\t26\t9\t11\t15\t7\t11\t0\t17\n-JY8QFUQ01A1E6T\t14\t213\t7\t7\t6\t1\t3\t5\t0\t6\n-JY8QFUQ01A1GYW\t41\t210\t25\t16\t13\t12\t7\t25\t2\t7\n-JY8QFUQ01A1GZY\t26\t212\t16\t10\t7\t9\t5\t10\t3\t8\n-JY8QFUQ01A1ISV\t11\t213\t8\t3\t5\t3\t2\t5\t0\t4\n-JY8QFUQ01A1IV8\t24\t209\t13\t11\t7\t6\t4\t12\t0\t8\n-JY8QFUQ01A1IYG\t13\t210\t6\t7\t5\t1\t2\t5\t2\t4\n-JY8QFUQ01A1K37\t9\t213\t6\t3\t5\t1\t1\t2\t1\t5\n-JY8QFUQ01A1KQO\t20\t213\t12\t8\t6\t6\t2\t9\t3\t6\n-JY8QFUQ01A1L2W\t12\t213\t5\t7\t3\t2\t3\t7\t0\t2\n-JY8QFUQ01A1LNA\t14\t213\t7\t7\t5\t2\t5\t4\t0\t5\n-JY8QFUQ01A1MBV\t21\t213\t11\t10\t4\t7\t1\t10\t2\t8\n-JY8QFUQ01A1MJG\t17\t210\t11\t6\t8\t3\t5\t8\t0\t4\n-JY8QFUQ01A1MJU\t16\t213\t9\t7\t5\t4\t5\t8\t0\t3\n-JY8QFUQ01A1OLP\t38\t213\t22\t16\t14\t8\t9\t14\t4\t11\n-JY8QFUQ01A1PLD\t20\t213\t12\t8\t6\t6\t2\t9\t3\t6\n-JY8QFUQ01A1Q3N\t32\t213\t20\t12\t16\t4\t7\t17\t3\t5\n-JY8QFUQ01A1QLN\t11\t209\t7\t4\t4\t3\t2\t4\t2\t3\n-JY8QFUQ01A1R7K\t26\t212\t12\t14\t9\t3\t6\t14\t1\t5\n-JY8QFUQ01A1RAE\t16\t213\t6\t10\t3\t3\t1'..b'\t6\t9\t5\t1\t4\t5\t0\t6\n-JY8QFUQ01BCZ6T\t18\t210\t9\t9\t7\t2\t3\t6\t0\t9\n-JY8QFUQ01BDHSG\t12\t213\t7\t5\t5\t2\t4\t4\t0\t4\n-JY8QFUQ01BF6IL\t10\t213\t7\t3\t3\t4\t2\t3\t0\t5\n-JY8QFUQ01BG2KZ\t17\t213\t10\t7\t3\t7\t0\t9\t2\t6\n-JY8QFUQ01BG9LH\t19\t213\t15\t4\t8\t7\t4\t7\t1\t7\n-JY8QFUQ01BGU0C\t20\t210\t11\t9\t8\t3\t3\t8\t0\t9\n-JY8QFUQ01BHYPA\t9\t213\t6\t3\t3\t3\t1\t4\t1\t3\n-JY8QFUQ01BJC1Y\t8\t213\t5\t3\t2\t3\t1\t2\t0\t5\n-JY8QFUQ01BKLR9\t20\t213\t8\t12\t6\t2\t5\t4\t5\t6\n-JY8QFUQ01BLF36\t38\t213\t21\t17\t10\t11\t6\t21\t3\t8\n-JY8QFUQ01BLJYE\t35\t213\t18\t17\t9\t9\t6\t19\t0\t10\n-JY8QFUQ01BLLRQ\t12\t213\t9\t3\t3\t6\t2\t3\t2\t5\n-JY8QFUQ01BM2SX\t26\t213\t19\t7\t10\t9\t6\t13\t1\t6\n-JY8QFUQ01BM631\t10\t213\t7\t3\t2\t5\t0\t6\t1\t3\n-JY8QFUQ01BMPYC\t19\t213\t12\t7\t9\t3\t4\t10\t0\t5\n-JY8QFUQ01BMULR\t13\t213\t10\t3\t7\t3\t3\t3\t1\t6\n-JY8QFUQ01BNJBB\t27\t210\t15\t12\t8\t7\t7\t12\t4\t4\n-JY8QFUQ01BNJGF\t28\t213\t18\t10\t13\t5\t6\t13\t2\t7\n-JY8QFUQ01BP3M1\t14\t213\t10\t4\t6\t4\t2\t5\t2\t5\n-JY8QFUQ01BPT8C\t16\t216\t8\t8\t3\t5\t3\t6\t0\t7\n-JY8QFUQ01BPXZS\t31\t216\t19\t12\t12\t7\t7\t14\t5\t5\n-JY8QFUQ01BR9V1\t8\t213\t4\t4\t2\t2\t1\t4\t1\t2\n-JY8QFUQ01BRGSI\t9\t213\t7\t2\t2\t5\t2\t3\t0\t4\n-JY8QFUQ01BRNFF\t17\t213\t12\t5\t9\t3\t6\t7\t2\t2\n-JY8QFUQ01BSGO4\t11\t213\t5\t6\t4\t1\t1\t4\t0\t6\n-JY8QFUQ01BT0O2\t19\t213\t12\t7\t8\t4\t4\t7\t1\t7\n-JY8QFUQ01BT4AX\t11\t213\t8\t3\t5\t3\t2\t5\t0\t4\n-JY8QFUQ01BT86M\t10\t213\t7\t3\t4\t3\t2\t3\t1\t4\n-JY8QFUQ01BTQAH\t26\t213\t12\t14\t7\t5\t3\t9\t1\t13\n-JY8QFUQ01BURMR\t36\t213\t21\t15\t7\t14\t5\t18\t3\t10\n-JY8QFUQ01BV9YG\t22\t213\t13\t9\t5\t8\t5\t6\t1\t10\n-JY8QFUQ01BW9QL\t9\t213\t6\t3\t5\t1\t1\t2\t1\t5\n-JY8QFUQ01BWI2D\t29\t213\t17\t12\t11\t6\t6\t13\t2\t8\n-JY8QFUQ01BXYLF\t15\t213\t9\t6\t7\t2\t3\t9\t0\t3\n-JY8QFUQ01BY231\t19\t216\t11\t8\t7\t4\t3\t11\t0\t5\n-JY8QFUQ01BYGN8\t20\t213\t13\t7\t8\t5\t5\t8\t2\t5\n-JY8QFUQ01C2NGE\t15\t210\t10\t5\t3\t7\t6\t4\t1\t4\n-JY8QFUQ01C2ROO\t7\t213\t3\t4\t2\t1\t2\t2\t1\t2\n-JY8QFUQ01C3QHH\t13\t213\t8\t5\t4\t4\t2\t6\t1\t4\n-JY8QFUQ01C4MHW\t11\t213\t5\t6\t4\t1\t3\t5\t0\t3\n-JY8QFUQ01C5Q2O\t16\t213\t5\t11\t2\t3\t3\t4\t0\t9\n-JY8QFUQ01C8QWZ\t11\t213\t4\t7\t3\t1\t0\t4\t1\t6\n-JY8QFUQ01C92F8\t13\t222\t9\t4\t5\t4\t2\t6\t0\t5\n-JY8QFUQ01C966Y\t10\t213\t4\t6\t1\t3\t2\t3\t0\t5\n-JY8QFUQ01C98A9\t11\t213\t8\t3\t6\t2\t3\t3\t1\t4\n-JY8QFUQ01CANL1\t20\t213\t13\t7\t7\t6\t4\t5\t0\t11\n-JY8QFUQ01CD8ZK\t30\t213\t20\t10\t8\t12\t8\t10\t1\t11\n-JY8QFUQ01CD9VK\t15\t213\t9\t6\t7\t2\t2\t4\t0\t9\n-JY8QFUQ01CDZ5R\t23\t212\t16\t7\t8\t8\t5\t12\t2\t4\n-JY8QFUQ01CE8P9\t18\t213\t13\t5\t8\t5\t6\t10\t1\t1\n-JY8QFUQ01CF06T\t12\t213\t8\t4\t5\t3\t4\t3\t1\t4\n-JY8QFUQ01CG8U2\t18\t210\t11\t7\t8\t3\t5\t5\t1\t7\n-JY8QFUQ01CGLTX\t15\t219\t9\t6\t7\t2\t1\t9\t1\t4\n-JY8QFUQ01CGQFF\t21\t213\t13\t8\t8\t5\t4\t7\t2\t8\n-JY8QFUQ01CHDDF\t23\t219\t11\t12\t8\t3\t4\t9\t1\t9\n-JY8QFUQ01CHKLB\t8\t213\t5\t3\t2\t3\t1\t4\t1\t2\n-JY8QFUQ01CHW93\t13\t213\t7\t6\t5\t2\t3\t4\t2\t4\n-JY8QFUQ01CII5W\t30\t210\t15\t15\t3\t12\t6\t11\t1\t12\n-JY8QFUQ01CINZT\t5\t213\t2\t3\t0\t2\t0\t1\t1\t3\n-JY8QFUQ01CJLXK\t22\t213\t12\t10\t9\t3\t6\t9\t0\t7\n-JY8QFUQ01CJT9B\t31\t213\t18\t13\t10\t8\t5\t16\t3\t7\n-JY8QFUQ01CK1VY\t28\t216\t19\t9\t12\t7\t7\t14\t2\t5\n-JY8QFUQ01CKN3U\t25\t213\t17\t8\t8\t9\t4\t9\t4\t8\n-JY8QFUQ01CLP4K\t14\t213\t7\t7\t5\t2\t5\t4\t0\t5\n-JY8QFUQ01CNCW4\t10\t213\t5\t5\t3\t2\t2\t2\t0\t6\n-JY8QFUQ01CO019\t16\t213\t10\t6\t5\t5\t5\t5\t0\t6\n-JY8QFUQ01CPVUP\t25\t213\t11\t14\t8\t3\t6\t10\t2\t7\n-JY8QFUQ01CPYJ0\t14\t213\t7\t7\t6\t1\t3\t5\t0\t6\n-JY8QFUQ01CQH14\t14\t213\t11\t3\t8\t3\t2\t5\t2\t5\n-JY8QFUQ01CST8T\t17\t213\t10\t7\t6\t4\t2\t4\t1\t10\n-JY8QFUQ01CU1XI\t17\t209\t8\t9\t5\t3\t6\t6\t0\t5\n-JY8QFUQ01CU5CB\t20\t213\t13\t7\t9\t4\t5\t7\t2\t6\n-JY8QFUQ01CUGFD\t30\t213\t13\t17\t8\t5\t6\t10\t2\t12\n-JY8QFUQ01CURPS\t32\t213\t20\t12\t16\t4\t7\t17\t3\t5\n-JY8QFUQ01CY2WW\t12\t213\t6\t6\t2\t4\t3\t5\t0\t4\n-JY8QFUQ01CY6MC\t16\t213\t9\t7\t6\t3\t2\t7\t0\t7\n-JY8QFUQ01CYWC2\t12\t213\t7\t5\t4\t3\t1\t3\t2\t6\n-JY8QFUQ01DA9FW\t13\t213\t9\t4\t6\t3\t3\t6\t2\t2\n-JY8QFUQ01DA9S4\t0\t216\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DC4QI\t21\t213\t12\t9\t7\t5\t5\t9\t2\t5\n-JY8QFUQ01DC8OC\t26\t210\t11\t15\t4\t7\t4\t13\t0\t9\n-JY8QFUQ01DCPGQ\t19\t213\t14\t5\t6\t8\t7\t6\t1\t5\n-JY8QFUQ01DEKWC\t17\t213\t6\t11\t5\t1\t2\t8\t1\t6\n-JY8QFUQ01DG2P7\t11\t211\t4\t7\t3\t1\t0\t4\t1\t6\n-JY8QFUQ01DG5KX\t21\t210\t11\t10\t8\t3\t6\t5\t4\t6\n-JY8QFUQ01DG6GC\t15\t213\t6\t9\t2\t4\t1\t6\t2\t6\n-JY8QFUQ01DHXHT\t20\t216\t10\t10\t4\t6\t2\t10\t2\t6\n-JY8QFUQ01DI39D\t8\t213\t4\t4\t3\t1\t2\t2\t0\t4\n-JY8QFUQ01DIBNC\t0\t216\t0\t0\t0\t0\t0\t0\t0\t0\n-JY8QFUQ01DJFIZ\t43\t213\t23\t20\t12\t11\t8\t15\t5\t15\n-JY8QFUQ01DLDLD\t7\t213\t4\t3\t2\t2\t1\t3\t0\t3\n-JY8QFUQ01DMF0A\t53\t216\t27\t26\t12\t15\t10\t22\t2\t19\n-JY8QFUQ01DOVL5\t15\t213\t10\t5\t6\t4\t1\t4\t2\t8\n-JY8QFUQ01DPT8R\t8\t212\t4\t4\t1\t3\t4\t2\t0\t2\n-JY8QFUQ01DUD3U\t29\t213\t18\t11\t12\t6\t7\t9\t2\t11\n-JY8QFUQ01DV4HU\t22\t213\t14\t8\t8\t6\t5\t10\t2\t5\n-JY8QFUQ01DV8LF\t6\t213\t1\t5\t0\t1\t2\t1\t0\t3\n-JY8QFUQ01DVBU0\t15\t212\t6\t9\t2\t4\t3\t4\t1\t7\n-JY8QFUQ01DXDOM\t36\t210\t22\t14\t12\t10\t7\t12\t0\t17\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/shm_overview_tandem_row.txt --- a/test-output/shm_overview_tandem_row.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -Tandems/Expected (ratio),2438,1921.45,1.27,1680,1360.14,1.24,758,561.32,1.35,1212,959.09,1.26,769,603.44,1.27,357,273.25,1.31,43,38.75,1.11,43,43.64,0.99,0,0.0,0,0,0.0,0,482,349.88,1.38,3650,2880.54,1.27 |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/tandem_frequency.txt --- a/test-output/tandem_frequency.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,9 +0,0 @@ -2 3292 -3 652 -4 143 -5 27 -6 11 -7 3 -8 2 -9 1 -10 1 |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/tandems_by_id.txt --- a/test-output/tandems_by_id.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| [ |
| b'@@ -1,1553 +0,0 @@\n-Sequence.ID\tnumber_of_mutations\tnumber_of_tandems\tregion_length\texpected_tandems\tlongest_tandem\ttandems\n-JY8QFUQ01A0005\t18\t1\t216\t1.42\t2\t[(147, 2)]\n-JY8QFUQ01A004N\t20\t3\t216\t1.76\t3\t[(106, 3), (164, 2), (275, 2)]\n-JY8QFUQ01A006G\t32\t4\t216\t4.59\t2\t[(106, 2), (205, 2), (220, 2), (251, 2)]\n-JY8QFUQ01A018V\t31\t5\t216\t4.31\t5\t[(104, 5), (119, 2), (237, 2), (254, 2), (301, 3)]\n-JY8QFUQ01A019O\t19\t2\t213\t1.61\t2\t[(104, 2), (254, 2)]\n-JY8QFUQ01A01KX\t29\t4\t213\t3.81\t3\t[(119, 2), (189, 3), (253, 3), (263, 3)]\n-JY8QFUQ01A0207\t16\t2\t213\t1.13\t2\t[(188, 2), (257, 2)]\n-JY8QFUQ01A02HL\t13\t0\t213\t0.73\t0\t[]\n-JY8QFUQ01A02KS\t14\t2\t213\t0.85\t2\t[(119, 2), (171, 2)]\n-JY8QFUQ01A02XZ\t10\t1\t213\t0.42\t2\t[(89, 2)]\n-JY8QFUQ01A03E3\t21\t3\t213\t1.97\t4\t[(172, 3), (189, 3), (196, 4)]\n-JY8QFUQ01A03N6\t39\t5\t213\t6.96\t2\t[(107, 2), (110, 2), (191, 2), (229, 2), (244, 2)]\n-JY8QFUQ01A0939\t15\t1\t222\t0.95\t2\t[(190, 2)]\n-JY8QFUQ01A09OY\t12\t0\t213\t0.62\t0\t[]\n-JY8QFUQ01A0C2Y\t18\t2\t213\t1.44\t2\t[(104, 2), (194, 2)]\n-JY8QFUQ01A0C33\t13\t0\t213\t0.73\t0\t[]\n-JY8QFUQ01A0C4X\t13\t2\t213\t0.73\t3\t[(103, 3), (107, 2)]\n-JY8QFUQ01A0D2K\t10\t0\t213\t0.42\t0\t[]\n-JY8QFUQ01A0D5E\t28\t5\t212\t3.57\t6\t[(87, 2), (172, 6), (190, 2), (258, 2), (301, 2)]\n-JY8QFUQ01A0DA8\t23\t2\t213\t2.38\t3\t[(103, 3), (301, 3)]\n-JY8QFUQ01A0DCS\t22\t3\t213\t2.17\t3\t[(85, 3), (107, 2), (192, 2)]\n-JY8QFUQ01A0EF3\t12\t1\t213\t0.62\t3\t[(106, 3)]\n-JY8QFUQ01A0ESJ\t17\t2\t213\t1.28\t2\t[(185, 2), (286, 2)]\n-JY8QFUQ01A0FII\t26\t1\t213\t3.05\t4\t[(171, 4)]\n-JY8QFUQ01A0FO5\t11\t2\t213\t0.52\t2\t[(196, 2), (300, 2)]\n-JY8QFUQ01A0GVR\t24\t3\t216\t2.56\t2\t[(106, 2), (171, 2), (275, 2)]\n-JY8QFUQ01A0GVY\t30\t3\t213\t4.08\t2\t[(187, 2), (192, 2), (255, 2)]\n-JY8QFUQ01A0IZI\t18\t4\t213\t1.44\t2\t[(86, 2), (164, 2), (187, 2), (190, 2)]\n-JY8QFUQ01A0LAJ\t29\t3\t219\t3.71\t3\t[(177, 2), (185, 3), (244, 2)]\n-JY8QFUQ01A0LBC\t31\t7\t213\t4.37\t4\t[(85, 2), (162, 2), (172, 2), (189, 2), (194, 4), (247, 2), (258, 2)]\n-JY8QFUQ01A0LEW\t9\t1\t213\t0.34\t2\t[(228, 2)]\n-JY8QFUQ01A0LZ5\t20\t4\t213\t1.78\t2\t[(108, 2), (163, 2), (173, 2), (184, 2)]\n-JY8QFUQ01A0N8H\t13\t0\t222\t0.70\t0\t[]\n-JY8QFUQ01A0OC8\t12\t0\t212\t0.62\t0\t[]\n-JY8QFUQ01A0OMH\t26\t2\t213\t3.05\t3\t[(103, 3), (150, 2)]\n-JY8QFUQ01A0OTP\t15\t0\t209\t1.00\t0\t[]\n-JY8QFUQ01A0RJS\t17\t2\t212\t1.28\t2\t[(104, 2), (194, 2)]\n-JY8QFUQ01A0S1H\t16\t1\t213\t1.13\t3\t[(105, 3)]\n-JY8QFUQ01A0TAV\t12\t1\t213\t0.62\t2\t[(162, 2)]\n-JY8QFUQ01A0TNI\t24\t1\t213\t2.59\t2\t[(192, 2)]\n-JY8QFUQ01A0UZS\t20\t2\t213\t1.78\t3\t[(118, 3), (190, 2)]\n-JY8QFUQ01A0VIE\t23\t3\t213\t2.38\t2\t[(106, 2), (209, 2), (254, 2)]\n-JY8QFUQ01A0WDV\t18\t3\t210\t1.46\t2\t[(119, 2), (165, 2), (172, 2)]\n-JY8QFUQ01A0WZB\t34\t4\t210\t5.34\t4\t[(165, 2), (174, 3), (191, 3), (300, 4)]\n-JY8QFUQ01A0X8W\t10\t0\t213\t0.42\t0\t[]\n-JY8QFUQ01A0XE3\t27\t4\t211\t3.33\t3\t[(119, 2), (189, 3), (253, 3), (263, 3)]\n-JY8QFUQ01A0Z64\t9\t0\t213\t0.34\t0\t[]\n-JY8QFUQ01A0ZW5\t27\t3\t216\t3.25\t3\t[(142, 2), (187, 3), (197, 2)]\n-JY8QFUQ01A0ZX6\t12\t0\t213\t0.62\t0\t[]\n-JY8QFUQ01A110D\t14\t0\t213\t0.85\t0\t[]\n-JY8QFUQ01A12BY\t14\t2\t213\t0.85\t4\t[(107, 2), (194, 4)]\n-JY8QFUQ01A12KV\t29\t5\t213\t3.81\t2\t[(86, 2), (104, 2), (118, 2), (159, 2), (276, 2)]\n-JY8QFUQ01A12V0\t28\t5\t213\t3.55\t3\t[(107, 2), (151, 3), (172, 2), (233, 2), (258, 2)]\n-JY8QFUQ01A14EE\t30\t5\t213\t4.08\t4\t[(104, 2), (164, 2), (173, 4), (188, 2), (196, 2)]\n-JY8QFUQ01A152R\t19\t2\t213\t1.61\t3\t[(107, 2), (172, 3)]\n-JY8QFUQ01A15L6\t31\t6\t215\t4.33\t3\t[(145, 3), (165, 2), (173, 3), (192, 3), (239, 2), (275, 2)]\n-JY8QFUQ01A15SR\t48\t8\t216\t10.44\t10\t[(79, 2), (82, 10), (100, 3), (110, 7), (118, 2), (135, 2), (155, 2), (275, 2)]\n-JY8QFUQ01A17D9\t17\t1\t213\t1.28\t2\t[(165, 2)]\n-JY8QFUQ01A17TV\t14\t0\t210\t0.87\t0\t[]\n-JY8QFUQ01A18L5\t12\t1\t213\t0.62\t2\t[(106, 2)]\n-JY8QFUQ01A1963\t12\t1\t212\t0.62\t2\t[(107, 2)]\n-JY8QFUQ01A1ALH\t22\t5\t216\t2.14\t2\t[(111, 2), (165, 2), (170, 2), (229, 2), (254, 2)]\n-JY8QFUQ01A1AYP\t14\t1\t213\t0.85\t2\t[(79, 2)]\n-JY8QFUQ01A1BK7\t14\t1\t213\t0.85\t3\t[(172, 3)]\n-JY8QFUQ01A1BT3\t24\t1\t210\t2.63\t2\t[(269, 2)]\n-JY8QFUQ01A1CLZ\t18\t1\t216\t1.42\t2\t[(103, 2)]\n-JY8QFUQ01A1CTT\t15\t4\t213\t0.99\t2\t[(86, 2), (104, 2), (107, 2), (184, 2)]\n-JY8QFUQ01A1DJR\t14\t1\t213\t0.85\t2\t[(197, 2)]\n-JY8QFUQ01A1DVA\t35\t4\t213\t5.59\t3\t[(86, 2), (163, 2), (175, 3), (187, 3)]\n-JY8'..b'Q01BV9YG\t22\t5\t213\t2.17\t4\t[(80, 2), (104, 2), (118, 2), (173, 2), (186, 4)]\n-JY8QFUQ01BW9QL\t9\t0\t213\t0.34\t0\t[]\n-JY8QFUQ01BWI2D\t29\t5\t213\t3.81\t4\t[(103, 2), (188, 3), (195, 2), (258, 4), (308, 2)]\n-JY8QFUQ01BXYLF\t15\t2\t213\t0.99\t3\t[(117, 3), (275, 2)]\n-JY8QFUQ01BY231\t19\t1\t216\t1.58\t2\t[(133, 2)]\n-JY8QFUQ01BYGN8\t20\t6\t213\t1.78\t2\t[(119, 2), (163, 2), (172, 2), (188, 2), (258, 2), (261, 2)]\n-JY8QFUQ01C2NGE\t15\t0\t210\t1.00\t0\t[]\n-JY8QFUQ01C2ROO\t7\t0\t213\t0.20\t0\t[]\n-JY8QFUQ01C3QHH\t13\t1\t213\t0.73\t2\t[(191, 2)]\n-JY8QFUQ01C4MHW\t11\t1\t213\t0.52\t2\t[(196, 2)]\n-JY8QFUQ01C5Q2O\t16\t5\t213\t1.13\t2\t[(173, 2), (176, 2), (190, 2), (196, 2), (248, 2)]\n-JY8QFUQ01C8QWZ\t11\t1\t213\t0.52\t2\t[(184, 2)]\n-JY8QFUQ01C92F8\t13\t0\t222\t0.70\t0\t[]\n-JY8QFUQ01C966Y\t10\t0\t213\t0.42\t0\t[]\n-JY8QFUQ01C98A9\t11\t0\t213\t0.52\t0\t[]\n-JY8QFUQ01CANL1\t20\t3\t213\t1.78\t3\t[(104, 3), (165, 2), (168, 2)]\n-JY8QFUQ01CD8ZK\t30\t5\t213\t4.08\t4\t[(104, 2), (164, 2), (173, 4), (188, 2), (196, 2)]\n-JY8QFUQ01CD9VK\t15\t4\t213\t0.99\t2\t[(86, 2), (104, 2), (107, 2), (184, 2)]\n-JY8QFUQ01CDZ5R\t23\t3\t212\t2.39\t2\t[(106, 2), (209, 2), (254, 2)]\n-JY8QFUQ01CE8P9\t18\t0\t213\t1.44\t0\t[]\n-JY8QFUQ01CF06T\t12\t0\t213\t0.62\t0\t[]\n-JY8QFUQ01CG8U2\t18\t3\t210\t1.46\t3\t[(106, 3), (110, 2), (162, 2)]\n-JY8QFUQ01CGLTX\t15\t2\t219\t0.96\t3\t[(178, 2), (227, 3)]\n-JY8QFUQ01CGQFF\t21\t3\t213\t1.97\t2\t[(86, 2), (119, 2), (193, 2)]\n-JY8QFUQ01CHDDF\t23\t4\t219\t2.31\t2\t[(110, 2), (174, 2), (221, 2), (287, 2)]\n-JY8QFUQ01CHKLB\t8\t0\t213\t0.26\t0\t[]\n-JY8QFUQ01CHW93\t13\t1\t213\t0.73\t2\t[(119, 2)]\n-JY8QFUQ01CII5W\t30\t5\t210\t4.14\t4\t[(106, 2), (118, 2), (193, 4), (258, 2), (285, 2)]\n-JY8QFUQ01CINZT\t5\t1\t213\t0.09\t2\t[(86, 2)]\n-JY8QFUQ01CJLXK\t22\t3\t213\t2.17\t3\t[(108, 2), (165, 2), (257, 3)]\n-JY8QFUQ01CJT9B\t31\t6\t213\t4.37\t3\t[(84, 3), (118, 2), (162, 3), (257, 2), (279, 2), (301, 2)]\n-JY8QFUQ01CK1VY\t28\t7\t216\t3.50\t3\t[(174, 3), (190, 2), (199, 2), (202, 2), (221, 2), (237, 3), (275, 2)]\n-JY8QFUQ01CKN3U\t25\t6\t213\t2.82\t3\t[(86, 2), (106, 3), (142, 2), (170, 2), (175, 2), (203, 2)]\n-JY8QFUQ01CLP4K\t14\t0\t213\t0.85\t0\t[]\n-JY8QFUQ01CNCW4\t10\t1\t213\t0.42\t2\t[(81, 2)]\n-JY8QFUQ01CO019\t16\t2\t213\t1.13\t2\t[(191, 2), (308, 2)]\n-JY8QFUQ01CPVUP\t25\t4\t213\t2.82\t2\t[(106, 2), (113, 2), (164, 2), (190, 2)]\n-JY8QFUQ01CPYJ0\t14\t2\t213\t0.85\t2\t[(106, 2), (164, 2)]\n-JY8QFUQ01CQH14\t14\t1\t213\t0.85\t2\t[(197, 2)]\n-JY8QFUQ01CST8T\t17\t3\t213\t1.28\t4\t[(172, 3), (188, 4), (197, 2)]\n-JY8QFUQ01CU1XI\t17\t2\t209\t1.30\t3\t[(155, 2), (190, 3)]\n-JY8QFUQ01CU5CB\t20\t3\t213\t1.78\t3\t[(172, 3), (229, 2), (300, 2)]\n-JY8QFUQ01CUGFD\t30\t4\t213\t4.08\t4\t[(118, 3), (166, 2), (170, 3), (188, 4)]\n-JY8QFUQ01CURPS\t32\t4\t213\t4.66\t4\t[(139, 3), (164, 2), (173, 2), (201, 4)]\n-JY8QFUQ01CY2WW\t12\t0\t213\t0.62\t0\t[]\n-JY8QFUQ01CY6MC\t16\t3\t213\t1.13\t3\t[(103, 2), (258, 2), (278, 3)]\n-JY8QFUQ01CYWC2\t12\t0\t213\t0.62\t0\t[]\n-JY8QFUQ01DA9FW\t13\t0\t213\t0.73\t0\t[]\n-JY8QFUQ01DC4QI\t21\t5\t213\t1.97\t4\t[(86, 2), (106, 2), (175, 2), (254, 2), (300, 4)]\n-JY8QFUQ01DC8OC\t26\t4\t210\t3.10\t3\t[(118, 2), (163, 3), (190, 2), (202, 2)]\n-JY8QFUQ01DCPGQ\t19\t3\t213\t1.61\t2\t[(106, 2), (191, 2), (244, 2)]\n-JY8QFUQ01DEKWC\t17\t3\t213\t1.28\t3\t[(86, 2), (118, 2), (162, 3)]\n-JY8QFUQ01DG2P7\t11\t1\t211\t0.52\t2\t[(184, 2)]\n-JY8QFUQ01DG5KX\t21\t4\t210\t2.00\t2\t[(106, 2), (172, 2), (261, 2), (279, 2)]\n-JY8QFUQ01DG6GC\t15\t2\t213\t0.99\t2\t[(191, 2), (196, 2)]\n-JY8QFUQ01DHXHT\t20\t3\t216\t1.76\t3\t[(106, 3), (164, 2), (275, 2)]\n-JY8QFUQ01DI39D\t8\t0\t213\t0.26\t0\t[]\n-JY8QFUQ01DJFIZ\t43\t10\t213\t8.48\t8\t[(103, 3), (107, 2), (110, 2), (164, 2), (174, 4), (191, 8), (258, 2), (264, 2), (277, 2), (290, 2)]\n-JY8QFUQ01DLDLD\t7\t1\t213\t0.20\t2\t[(190, 2)]\n-JY8QFUQ01DMF0A\t53\t12\t216\t12.76\t4\t[(103, 3), (113, 2), (117, 3), (162, 2), (165, 3), (172, 2), (175, 2), (189, 4), (207, 2), (213, 2), (274, 3), (301, 3)]\n-JY8QFUQ01DOVL5\t15\t3\t213\t0.99\t2\t[(109, 2), (113, 2), (286, 2)]\n-JY8QFUQ01DPT8R\t8\t1\t212\t0.26\t2\t[(196, 2)]\n-JY8QFUQ01DUD3U\t29\t4\t213\t3.81\t3\t[(108, 2), (112, 3), (163, 2), (173, 2)]\n-JY8QFUQ01DV4HU\t22\t2\t213\t2.17\t2\t[(103, 2), (119, 2)]\n-JY8QFUQ01DV8LF\t6\t0\t213\t0.14\t0\t[]\n-JY8QFUQ01DVBU0\t15\t4\t212\t0.99\t2\t[(176, 2), (190, 2), (196, 2), (248, 2)]\n-JY8QFUQ01DXDOM\t36\t4\t210\t6.00\t2\t[(86, 2), (190, 2), (194, 2), (213, 2)]\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/unmatched.txt --- a/test-output/unmatched.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| [ |
| b'@@ -1,190 +0,0 @@\n-Sequence.ID\tchunk_hit_percentage\tnt_hit_percentage\tstart_locations\tbest_match\n-JY8QFUQ01A0JN8\t89\t57\t[279, 280]\tunmatched, IGA2\n-JY8QFUQ01A0KG1\t95\t57\t[299, 301]\tunmatched, IGA2\n-JY8QFUQ01A0XAA\t89\t57\t[284]\tunmatched, IGA2\n-JY8QFUQ01A1201\t89\t57\t[294, 295]\tunmatched, IGA2\n-JY8QFUQ01A1J69\t89\t57\t[281, 282]\tunmatched, IGA2\n-JY8QFUQ01A2Y02\t89\t57\t[291]\tunmatched, IGA2\n-JY8QFUQ01A2ZKE\t88\t64\t[301, 302]\tunmatched, IGG2\n-JY8QFUQ01A36OR\t89\t57\t[278, 279]\tunmatched, IGA2\n-JY8QFUQ01A3PZ4\t89\t57\t[287, 288]\tunmatched, IGA2\n-JY8QFUQ01A3U1I\t63\t36\t[296, 293]\tunmatched, IGA2\n-JY8QFUQ01A4H9C\t79\t64\t[280]\tunmatched, IGA2\n-JY8QFUQ01A55QU\t88\t64\t[276]\tunmatched, IGG1\n-JY8QFUQ01A56OJ\t89\t57\t[272, 273]\tunmatched, IGA2\n-JY8QFUQ01A5K3B\t79\t57\t[290, 291, 288]\tunmatched, IGA2\n-JY8QFUQ01A6DSA\t89\t57\t[282, 283]\tunmatched, IGA2\n-JY8QFUQ01A6FSC\t88\t64\t[280]\tunmatched, IGG2\n-JY8QFUQ01A6GAE\t89\t57\t[292, 293]\tunmatched, IGA2\n-JY8QFUQ01A72DW\t75\t57\t[305, 304]\tunmatched, IGG1\n-JY8QFUQ01A75AZ\t89\t57\t[272, 273]\tunmatched, IGA2\n-JY8QFUQ01A7UAO\t62\t93\t[293]\tunmatched, IGG2\n-JY8QFUQ01A9CSP\t84\t50\t[314, 315]\tunmatched, IGA2\n-JY8QFUQ01A9KBS\t79\t57\t[298, 297, 296]\tunmatched, IGA2\n-JY8QFUQ01A9XMX\t89\t57\t[299, 301]\tunmatched, IGA1\n-JY8QFUQ01AAWJ6\t50\t64\t[261, 289]\tunmatched, IGG4\n-JY8QFUQ01AB8R5\t89\t57\t[278, 279]\tunmatched, IGA2\n-JY8QFUQ01ABJSU\t89\t57\t[278, 279]\tunmatched, IGA2\n-JY8QFUQ01ACF7S\t84\t57\t[286]\tunmatched, IGA2\n-JY8QFUQ01ACGK8\t74\t64\t[295, 296]\tunmatched, IGA1\n-JY8QFUQ01ACMHQ\t79\t64\t[309]\tunmatched, IGA1\n-JY8QFUQ01AD6VN\t89\t57\t[281, 282]\tunmatched, IGA2\n-JY8QFUQ01ADNPS\t89\t57\t[293, 294]\tunmatched, IGA2\n-JY8QFUQ01ADX4W\t89\t57\t[302, 303]\tunmatched, IGA2\n-JY8QFUQ01AEXEP\t89\t57\t[286, 287]\tunmatched, IGA2\n-JY8QFUQ01AFU74\t84\t57\t[289, 290]\tunmatched, IGA2\n-JY8QFUQ01AG0BX\t62\t79\t[282]\tunmatched, IGG2\n-JY8QFUQ01AGTXI\t89\t57\t[300, 301]\tunmatched, IGA2\n-JY8QFUQ01AHQN6\t89\t57\t[311, 312]\tunmatched, IGA2\n-JY8QFUQ01AIE5M\t75\t57\t[303]\tunmatched, IGG2\n-JY8QFUQ01AIYO5\t68\t86\t[293, 292]\tunmatched, IGA1\n-JY8QFUQ01AJFOA\t89\t57\t[278]\tunmatched, IGA2\n-JY8QFUQ01AJTH3\t100\t64\t[287, 288]\tunmatched, IGA2\n-JY8QFUQ01AMBVG\t58\t50\t[304]\tunmatched, IGA1\n-JY8QFUQ01AMG29\t0\t0\t[]\tunmatched, IGA1\n-JY8QFUQ01AMV93\t100\t64\t[279, 280]\tunmatched, IGA2\n-JY8QFUQ01ANFJ6\t89\t57\t[301]\tunmatched, IGA2\n-JY8QFUQ01ANN07\t62\t50\t[285, 277]\tunmatched, IGG4\n-JY8QFUQ01ANOBA\t75\t64\t[299, 298]\tunmatched, IGG4\n-JY8QFUQ01ANT01\t89\t57\t[283, 284]\tunmatched, IGA2\n-JY8QFUQ01ANU9C\t89\t57\t[276, 277]\tunmatched, IGA2\n-JY8QFUQ01AP4OP\t79\t64\t[302, 304]\tunmatched, IGA2\n-JY8QFUQ01APLX8\t89\t57\t[278, 279]\tunmatched, IGA2\n-JY8QFUQ01APOB5\t89\t57\t[290, 291]\tunmatched, IGA2\n-JY8QFUQ01APXHX\t88\t64\t[283]\tunmatched, IGG2\n-JY8QFUQ01AQ36T\t89\t57\t[282, 283]\tunmatched, IGA2\n-JY8QFUQ01AQ6RF\t79\t64\t[292]\tunmatched, IGA2\n-JY8QFUQ01AQQ9J\t89\t57\t[305, 306]\tunmatched, IGA2\n-JY8QFUQ01AR5SV\t69\t64\t[285, 287]\tunmatched, IGG1\n-JY8QFUQ01ARLVF\t63\t86\t[288]\tunmatched, IGA2\n-JY8QFUQ01ARS0N\t89\t57\t[279, 280]\tunmatched, IGA2\n-JY8QFUQ01AT43H\t84\t57\t[276, 278]\tunmatched, IGA2\n-JY8QFUQ01AT8N2\t79\t57\t[286, 281, 283]\tunmatched, IGA2\n-JY8QFUQ01ATKPT\t69\t79\t[307]\tunmatched, IGG1\n-JY8QFUQ01AU2BA\t88\t64\t[294]\tunmatched, IGG1\n-JY8QFUQ01AUBMD\t84\t50\t[269, 268]\tunmatched, IGA1\n-JY8QFUQ01AVBV0\t100\t57\t[307]\tunmatched, IGG1\n-JY8QFUQ01AVKTX\t89\t57\t[277, 278]\tunmatched, IGA1\n-JY8QFUQ01AW6B3\t62\t57\t[293, 295]\tunmatched, IGG2\n-JY8QFUQ01AWTQR\t89\t57\t[303]\tunmatched, IGA2\n-JY8QFUQ01AY4JM\t75\t57\t[276, 277]\tunmatched, IGG1\n-JY8QFUQ01B0222\t89\t57\t[300, 301]\tunmatched, IGA2\n-JY8QFUQ01B19RC\t75\t64\t[306, 307, 302]\tunmatched, IGG1\n-JY8QFUQ01B1HC5\t84\t57\t[280, 281]\tunmatched, IGA2\n-JY8QFUQ01B1QV9\t89\t57\t[308, 309]\tunmatched, IGA2\n-JY8QFUQ01B1S6W\t84\t64\t[295, 297]\tunmatched, IGA1\n-JY8QFUQ01B2ACS\t74\t43\t[284, 285]\tunmatched, IGA2\n-JY8QFUQ01B2E25\t84\t57\t[270]\tunmatched, IGA2\n-JY8QFUQ01B2GL4\t74\t43\t[288, 289]\tunmatched, IGA2\n-JY8QFUQ01B2XE6\t81\t64\t[301, 300]\tunmatched, IGG2\n-JY8QFUQ01B2XKD\t95\t64\t[279, 278]\tunmatched, IGA2\n-JY8QFUQ01B37IT\t100\t57\t[294]\tunmatched, IGG1\n-JY8QFUQ01B5KCJ\t89\t57\t[294, 295]\tunmatched, IGA2\n-JY8QFUQ01B5XDW\t79\t50\t[298, 2'..b'nmatched, IGA1\n-JY8QFUQ01BNJBB\t68\t29\t[293, 295]\tunmatched, IGA1\n-JY8QFUQ01BNJGF\t89\t57\t[275, 276]\tunmatched, IGA2\n-JY8QFUQ01BP3M1\t84\t64\t[279]\tunmatched, IGA2\n-JY8QFUQ01BPT8C\t89\t57\t[290, 291]\tunmatched, IGA2\n-JY8QFUQ01BPXZS\t89\t57\t[297, 298]\tunmatched, IGA2\n-JY8QFUQ01BR9V1\t74\t57\t[301, 300]\tunmatched, IGA2\n-JY8QFUQ01BRGSI\t84\t57\t[282, 283]\tunmatched, IGA2\n-JY8QFUQ01BRNFF\t79\t57\t[282, 281]\tunmatched, IGA1\n-JY8QFUQ01BSGO4\t26\t0\t[281]\tunmatched, IGA1\n-JY8QFUQ01BT0O2\t89\t57\t[278, 279]\tunmatched, IGA2\n-JY8QFUQ01BT4AX\t81\t64\t[292, 291]\tunmatched, IGG1\n-JY8QFUQ01BT86M\t89\t57\t[302]\tunmatched, IGA2\n-JY8QFUQ01BTQAH\t89\t57\t[294, 295]\tunmatched, IGA2\n-JY8QFUQ01BURMR\t84\t64\t[288, 289]\tunmatched, IGA1\n-JY8QFUQ01BV9YG\t62\t71\t[303, 301]\tunmatched, IGG1\n-JY8QFUQ01BW9QL\t100\t57\t[309]\tunmatched, IGG1\n-JY8QFUQ01BWI2D\t89\t57\t[284, 285]\tunmatched, IGA2\n-JY8QFUQ01BXYLF\t53\t43\t[285, 275]\tunmatched, IGA2\n-JY8QFUQ01BY231\t63\t71\t[308, 309, 307]\tunmatched, IGA1\n-JY8QFUQ01BYGN8\t74\t57\t[301, 302]\tunmatched, IGA2\n-JY8QFUQ01C2NGE\t81\t64\t[282, 281]\tunmatched, IGG1\n-JY8QFUQ01C2ROO\t74\t50\t[281, 283]\tunmatched, IGA2\n-JY8QFUQ01C3QHH\t89\t57\t[311, 312]\tunmatched, IGA2\n-JY8QFUQ01C4MHW\t79\t57\t[277, 278]\tunmatched, IGA2\n-JY8QFUQ01C5Q2O\t74\t57\t[285, 286]\tunmatched, IGA2\n-JY8QFUQ01C8QWZ\t79\t57\t[273, 274]\tunmatched, IGA2\n-JY8QFUQ01C92F8\t84\t57\t[299, 300]\tunmatched, IGA1\n-JY8QFUQ01C966Y\t89\t57\t[281, 282]\tunmatched, IGA2\n-JY8QFUQ01C98A9\t84\t57\t[292, 293]\tunmatched, IGA2\n-JY8QFUQ01CANL1\t79\t57\t[283, 285, 275]\tunmatched, IGA2\n-JY8QFUQ01CD8ZK\t68\t64\t[282, 273]\tunmatched, IGA2\n-JY8QFUQ01CD9VK\t5\t14\t[]\tunmatched, IGA1\n-JY8QFUQ01CDZ5R\t58\t100\t[288]\tunmatched, IGA1\n-JY8QFUQ01CE8P9\t89\t57\t[293, 294]\tunmatched, IGA2\n-JY8QFUQ01CF06T\t88\t64\t[283]\tunmatched, IGG1\n-JY8QFUQ01CG8U2\t95\t57\t[286, 288]\tunmatched, IGA2\n-JY8QFUQ01CGLTX\t89\t64\t[299, 298]\tunmatched, IGA1\n-JY8QFUQ01CGQFF\t84\t29\t[290, 292]\tunmatched, IGA1\n-JY8QFUQ01CHDDF\t89\t57\t[294, 295]\tunmatched, IGA2\n-JY8QFUQ01CHKLB\t84\t64\t[293]\tunmatched, IGA2\n-JY8QFUQ01CHW93\t0\t0\t[]\tunmatched, IGA1\n-JY8QFUQ01CII5W\t88\t64\t[289]\tunmatched, IGG1\n-JY8QFUQ01CINZT\t84\t64\t[284]\tunmatched, IGA2\n-JY8QFUQ01CJLXK\t84\t57\t[287, 286]\tunmatched, IGA2\n-JY8QFUQ01CJT9B\t68\t57\t[287, 290]\tunmatched, IGA2\n-JY8QFUQ01CK1VY\t84\t29\t[288, 290]\tunmatched, IGA1\n-JY8QFUQ01CKN3U\t88\t64\t[303]\tunmatched, IGG2\n-JY8QFUQ01CLP4K\t89\t57\t[281, 282]\tunmatched, IGA2\n-JY8QFUQ01CNCW4\t79\t64\t[267, 265, 266]\tunmatched, IGA1\n-JY8QFUQ01CO019\t50\t71\t[265]\tunmatched, IGG1\n-JY8QFUQ01CPVUP\t84\t57\t[288, 291]\tunmatched, IGA2\n-JY8QFUQ01CPYJ0\t84\t64\t[284, 287, 286]\tunmatched, IGA2\n-JY8QFUQ01CQH14\t75\t64\t[288]\tunmatched, IGG1\n-JY8QFUQ01CST8T\t84\t64\t[278, 280]\tunmatched, IGA2\n-JY8QFUQ01CU1XI\t84\t57\t[281, 282]\tunmatched, IGA2\n-JY8QFUQ01CU5CB\t79\t29\t[281, 282, 273]\tunmatched, IGA2\n-JY8QFUQ01CUGFD\t68\t57\t[293, 287]\tunmatched, IGA2\n-JY8QFUQ01CURPS\t74\t43\t[298, 299]\tunmatched, IGA2\n-JY8QFUQ01CY2WW\t84\t57\t[287, 289]\tunmatched, IGA2\n-JY8QFUQ01CY6MC\t79\t57\t[288, 289]\tunmatched, IGA2\n-JY8QFUQ01CYWC2\t89\t57\t[278, 279]\tunmatched, IGA2\n-JY8QFUQ01DA9FW\t89\t57\t[276, 277]\tunmatched, IGA2\n-JY8QFUQ01DA9S4\t56\t71\t[285]\tunmatched, IGG1\n-JY8QFUQ01DC4QI\t84\t57\t[284, 287]\tunmatched, IGA1\n-JY8QFUQ01DC8OC\t63\t43\t[275, 277]\tunmatched, IGA2\n-JY8QFUQ01DCPGQ\t56\t64\t[284]\tunmatched, IGG1\n-JY8QFUQ01DEKWC\t68\t50\t[295, 287, 296]\tunmatched, IGA2\n-JY8QFUQ01DG2P7\t79\t57\t[271, 272]\tunmatched, IGA2\n-JY8QFUQ01DG5KX\t42\t43\t[280]\tunmatched, IGA2\n-JY8QFUQ01DG6GC\t89\t57\t[296, 297]\tunmatched, IGA2\n-JY8QFUQ01DHXHT\t81\t57\t[295]\tunmatched, IGG1\n-JY8QFUQ01DI39D\t84\t64\t[267, 269]\tunmatched, IGA1\n-JY8QFUQ01DIBNC\t69\t79\t[319, 315]\tunmatched, IGG1\n-JY8QFUQ01DJFIZ\t88\t64\t[294]\tunmatched, IGG1\n-JY8QFUQ01DLDLD\t68\t86\t[281]\tunmatched, IGA1\n-JY8QFUQ01DMF0A\t68\t79\t[301]\tunmatched, IGA1\n-JY8QFUQ01DOVL5\t89\t57\t[302, 303]\tunmatched, IGA2\n-JY8QFUQ01DPT8R\t84\t57\t[271, 273]\tunmatched, IGA2\n-JY8QFUQ01DUD3U\t79\t64\t[279]\tunmatched, IGA2\n-JY8QFUQ01DV4HU\t62\t71\t[279, 280]\tunmatched, IGG2\n-JY8QFUQ01DV8LF\t89\t57\t[279, 280]\tunmatched, IGA2\n-JY8QFUQ01DVBU0\t74\t57\t[286, 285, 283]\tunmatched, IGA2\n-JY8QFUQ01DXDOM\t89\t57\t[283, 284]\tunmatched, IGA2\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/unmatched_mean_n.txt --- a/test-output/unmatched_mean_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -189 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/unmatched_mean_value.txt --- a/test-output/unmatched_mean_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -18.4 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/unmatched_median_n.txt --- a/test-output/unmatched_median_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -189 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/unmatched_median_value.txt --- a/test-output/unmatched_median_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -16 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/unmatched_sum_n.txt --- a/test-output/unmatched_sum_n.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -189 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f test-output/unmatched_sum_value.txt --- a/test-output/unmatched_sum_value.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,1 +0,0 @@ -3486 \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/.pytest_cache/.gitignore --- a/tests/.pytest_cache/.gitignore Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,2 +0,0 @@ -# Created by pytest automatically. -* |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/.pytest_cache/CACHEDIR.TAG --- a/tests/.pytest_cache/CACHEDIR.TAG Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| @@ -1,4 +0,0 @@ -Signature: 8a477f597d28d172789f06886806bc55 -# This file is a cache directory tag created by pytest. -# For information about cache directory tags, see: -# http://www.bford.info/cachedir/spec.html |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/.pytest_cache/README.md --- a/tests/.pytest_cache/README.md Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| [ |
| @@ -1,8 +0,0 @@ -# pytest cache directory # - -This directory contains data from the pytest's cache plugin, -which provides the `--lf` and `--ff` options, as well as the `cache` fixture. - -**Do not** commit this to version control. - -See [the docs](https://docs.pytest.org/en/stable/cache.html) for more information. |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/.pytest_cache/v/cache/lastfailed --- a/tests/.pytest_cache/v/cache/lastfailed Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| [ |
| @@ -1,3 +0,0 @@ -{ - "test_shm_csr.py::test_results_match_validation[shm_overview.txt]": true -} \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/.pytest_cache/v/cache/nodeids --- a/tests/.pytest_cache/v/cache/nodeids Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| [ |
| @@ -1,27 +0,0 @@ -[ - "test_shm_csr.py::test_check_output", - "test_shm_csr.py::test_nt_overview", - "test_shm_csr.py::test_results_match_validation[IGA_pie.txt]", - "test_shm_csr.py::test_results_match_validation[IGG_pie.txt]", - "test_shm_csr.py::test_results_match_validation[aa_histogram_sum.txt]", - "test_shm_csr.py::test_results_match_validation[aa_histogram_sum_IGA.txt]", - "test_shm_csr.py::test_results_match_validation[aa_histogram_sum_IGG.txt]", - "test_shm_csr.py::test_results_match_validation[absolute_mutations.txt]", - "test_shm_csr.py::test_results_match_validation[frequency_ranges_classes.txt]", - "test_shm_csr.py::test_results_match_validation[frequency_ranges_subclasses.txt]", - "test_shm_csr.py::test_results_match_validation[mutation_by_id.txt]", - "test_shm_csr.py::test_results_match_validation[relative_mutations.txt]", - "test_shm_csr.py::test_results_match_validation[scatter.txt]", - "test_shm_csr.py::test_results_match_validation[shm_overview.txt]", - "test_shm_csr.py::test_results_match_validation[tandems_by_id.txt]", - "test_shm_csr.py::test_results_match_validation[transitions_IGA1_sum.txt]", - "test_shm_csr.py::test_results_match_validation[transitions_IGA2_sum.txt]", - "test_shm_csr.py::test_results_match_validation[transitions_IGA_sum.txt]", - "test_shm_csr.py::test_results_match_validation[transitions_IGE_sum.txt]", - "test_shm_csr.py::test_results_match_validation[transitions_IGG1_sum.txt]", - "test_shm_csr.py::test_results_match_validation[transitions_IGG2_sum.txt]", - "test_shm_csr.py::test_results_match_validation[transitions_IGG3_sum.txt]", - "test_shm_csr.py::test_results_match_validation[transitions_IGG4_sum.txt]", - "test_shm_csr.py::test_results_match_validation[transitions_IGG_sum.txt]", - "test_shm_csr.py::test_results_match_validation[transitions_all_sum.txt]" -] \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/.pytest_cache/v/cache/stepwise --- a/tests/.pytest_cache/v/cache/stepwise Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| [ |
| @@ -1,1 +0,0 @@ -[] \ No newline at end of file |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/__pycache__/test_shm_csr.cpython-37-pytest-6.2.5.pyc |
| b |
| Binary file tests/__pycache__/test_shm_csr.cpython-37-pytest-6.2.5.pyc has changed |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/__pycache__/test_shm_csr.cpython-37.pyc |
| b |
| Binary file tests/__pycache__/test_shm_csr.cpython-37.pyc has changed |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/__pycache__/test_shm_csr.cpython-39-pytest-6.2.5.pyc |
| b |
| Binary file tests/__pycache__/test_shm_csr.cpython-39-pytest-6.2.5.pyc has changed |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/__pycache__/test_shm_csr.cpython-39-pytest-7.2.0.pyc |
| b |
| Binary file tests/__pycache__/test_shm_csr.cpython-39-pytest-7.2.0.pyc has changed |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/data/intermediate_files/RGYW.txt --- a/tests/data/intermediate_files/RGYW.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| b'@@ -1,501260 +0,0 @@\n-JY8QFUQ01A0005\t2\t5\tFR1\n-JY8QFUQ01A0005\t8\t11\tFR1\n-JY8QFUQ01A0005\t82\t85\tCDR1\n-JY8QFUQ01A0005\t100\t103\tCDR1\n-JY8QFUQ01A0005\t106\t109\tCDR1\n-JY8QFUQ01A0005\t118\t121\tFR2\n-JY8QFUQ01A0005\t146\t149\tFR2\n-JY8QFUQ01A0005\t163\t166\tFR2-CDR2\n-JY8QFUQ01A0005\t190\t193\tCDR2\n-JY8QFUQ01A0005\t257\t260\tFR3\n-JY8QFUQ01A0005\t269\t272\tFR3\n-JY8QFUQ01A0005\t274\t277\tFR3\n-JY8QFUQ01A004N\t2\t5\tFR1\n-JY8QFUQ01A004N\t8\t11\tFR1\n-JY8QFUQ01A004N\t82\t85\tCDR1\n-JY8QFUQ01A004N\t100\t103\tCDR1\n-JY8QFUQ01A004N\t106\t109\tCDR1\n-JY8QFUQ01A004N\t118\t121\tFR2\n-JY8QFUQ01A004N\t146\t149\tFR2\n-JY8QFUQ01A004N\t163\t166\tFR2-CDR2\n-JY8QFUQ01A004N\t190\t193\tCDR2\n-JY8QFUQ01A004N\t269\t272\tFR3\n-JY8QFUQ01A004N\t274\t277\tFR3\n-JY8QFUQ01A004N\t297\t300\tFR3\n-JY8QFUQ01A006G\t2\t5\tFR1\n-JY8QFUQ01A006G\t8\t11\tFR1\n-JY8QFUQ01A006G\t82\t85\tCDR1\n-JY8QFUQ01A006G\t100\t103\tCDR1\n-JY8QFUQ01A006G\t106\t109\tCDR1\n-JY8QFUQ01A006G\t118\t121\tFR2\n-JY8QFUQ01A006G\t146\t149\tFR2\n-JY8QFUQ01A006G\t163\t166\tFR2-CDR2\n-JY8QFUQ01A006G\t190\t193\tCDR2\n-JY8QFUQ01A006G\t257\t260\tFR3\n-JY8QFUQ01A006G\t269\t272\tFR3\n-JY8QFUQ01A006G\t274\t277\tFR3\n-JY8QFUQ01A006G\t297\t300\tFR3\n-JY8QFUQ01A018V\t8\t11\tFR1\n-JY8QFUQ01A018V\t82\t85\tCDR1\n-JY8QFUQ01A018V\t103\t106\tCDR1\n-JY8QFUQ01A018V\t118\t121\tFR2\n-JY8QFUQ01A018V\t128\t131\tFR2\n-JY8QFUQ01A018V\t190\t193\tCDR2\n-JY8QFUQ01A018V\t237\t240\tFR3\n-JY8QFUQ01A018V\t257\t260\tFR3\n-JY8QFUQ01A018V\t269\t272\tFR3\n-JY8QFUQ01A018V\t274\t277\tFR3\n-JY8QFUQ01A019O\t8\t11\tFR1\n-JY8QFUQ01A019O\t24\t27\tFR1\n-JY8QFUQ01A019O\t73\t76\tFR1\n-JY8QFUQ01A019O\t85\t88\tCDR1\n-JY8QFUQ01A019O\t106\t109\tCDR1\n-JY8QFUQ01A019O\t118\t121\tFR2\n-JY8QFUQ01A019O\t253\t256\tFR3\n-JY8QFUQ01A019O\t274\t277\tFR3\n-JY8QFUQ01A01KX\t8\t11\tFR1\n-JY8QFUQ01A01KX\t31\t34\tFR1\n-JY8QFUQ01A01KX\t36\t39\tFR1\n-JY8QFUQ01A01KX\t103\t106\tCDR1\n-JY8QFUQ01A01KX\t118\t121\tFR2\n-JY8QFUQ01A01KX\t132\t135\tFR2\n-JY8QFUQ01A01KX\t146\t149\tFR2\n-JY8QFUQ01A01KX\t162\t165\tFR2\n-JY8QFUQ01A01KX\t172\t175\tCDR2\n-JY8QFUQ01A01KX\t187\t190\tCDR2\n-JY8QFUQ01A01KX\t224\t227\tFR3\n-JY8QFUQ01A0207\t8\t11\tFR1\n-JY8QFUQ01A0207\t31\t34\tFR1\n-JY8QFUQ01A0207\t36\t39\tFR1\n-JY8QFUQ01A0207\t103\t106\tCDR1\n-JY8QFUQ01A0207\t118\t121\tFR2\n-JY8QFUQ01A0207\t132\t135\tFR2\n-JY8QFUQ01A0207\t146\t149\tFR2\n-JY8QFUQ01A0207\t162\t165\tFR2\n-JY8QFUQ01A0207\t172\t175\tCDR2\n-JY8QFUQ01A0207\t187\t190\tCDR2\n-JY8QFUQ01A0207\t224\t227\tFR3\n-JY8QFUQ01A02HL\t8\t11\tFR1\n-JY8QFUQ01A02HL\t31\t34\tFR1\n-JY8QFUQ01A02HL\t36\t39\tFR1\n-JY8QFUQ01A02HL\t103\t106\tCDR1\n-JY8QFUQ01A02HL\t132\t135\tFR2\n-JY8QFUQ01A02HL\t146\t149\tFR2\n-JY8QFUQ01A02HL\t187\t190\tCDR2\n-JY8QFUQ01A02HL\t196\t199\tFR3\n-JY8QFUQ01A02HL\t297\t300\tFR3\n-JY8QFUQ01A02KS\t8\t11\tFR1\n-JY8QFUQ01A02KS\t31\t34\tFR1\n-JY8QFUQ01A02KS\t103\t106\tCDR1\n-JY8QFUQ01A02KS\t118\t121\tFR2\n-JY8QFUQ01A02KS\t132\t135\tFR2\n-JY8QFUQ01A02KS\t146\t149\tFR2\n-JY8QFUQ01A02KS\t170\t173\tCDR2\n-JY8QFUQ01A02KS\t297\t300\tFR3\n-JY8QFUQ01A02XZ\t8\t11\tFR1\n-JY8QFUQ01A02XZ\t31\t34\tFR1\n-JY8QFUQ01A02XZ\t36\t39\tFR1\n-JY8QFUQ01A02XZ\t103\t106\tCDR1\n-JY8QFUQ01A02XZ\t118\t121\tFR2\n-JY8QFUQ01A02XZ\t132\t135\tFR2\n-JY8QFUQ01A02XZ\t146\t149\tFR2\n-JY8QFUQ01A02XZ\t162\t165\tFR2\n-JY8QFUQ01A02XZ\t172\t175\tCDR2\n-JY8QFUQ01A02XZ\t187\t190\tCDR2\n-JY8QFUQ01A02XZ\t224\t227\tFR3\n-JY8QFUQ01A03E3\t8\t11\tFR1\n-JY8QFUQ01A03E3\t31\t34\tFR1\n-JY8QFUQ01A03E3\t36\t39\tFR1\n-JY8QFUQ01A03E3\t103\t106\tCDR1\n-JY8QFUQ01A03E3\t132\t135\tFR2\n-JY8QFUQ01A03E3\t146\t149\tFR2\n-JY8QFUQ01A03E3\t187\t190\tCDR2\n-JY8QFUQ01A03E3\t196\t199\tFR3\n-JY8QFUQ01A03E3\t297\t300\tFR3\n-JY8QFUQ01A03N6\t8\t11\tFR1\n-JY8QFUQ01A03N6\t106\t109\tCDR1\n-JY8QFUQ01A03N6\t146\t149\tFR2\n-JY8QFUQ01A03N6\t190\t193\tCDR2\n-JY8QFUQ01A03N6\t237\t240\tFR3\n-JY8QFUQ01A03N6\t257\t260\tFR3\n-JY8QFUQ01A03N6\t269\t272\tFR3\n-JY8QFUQ01A03N6\t274\t277\tFR3\n-JY8QFUQ01A08XO\t8\t11\tFR1\n-JY8QFUQ01A08XO\t82\t85\tCDR1\n-JY8QFUQ01A08XO\t103\t106\tCDR1\n-JY8QFUQ01A08XO\t118\t121\tFR2\n-JY8QFUQ01A08XO\t128\t131\tFR2\n-JY8QFUQ01A08XO\t161\t164\tFR2\n-JY8QFUQ01A08XO\t190\t193\tCDR2\n-JY8QFUQ01A08XO\t237\t240\tFR3\n-JY8QFUQ01A08XO\t257\t260\tFR3\n-JY8QFUQ01A08XO\t269\t272\tFR3\n-JY8QFUQ01A08XO\t274\t277\tFR3\n-JY8QFUQ01A0939\t3\t6\tFR1\n-JY8QFUQ01A0939\t8\t11\tFR1\n-JY8QFUQ01A0939\t14\t17\tFR1\n-JY8QFUQ01A0939\t100\t103\tCDR1\n-JY8QFUQ01A0939\t128\t131\tFR2\n-JY8QFUQ01A0939\t155\t158\tFR2\n-JY8QFUQ01A0939\t188\t191\tCDR2\n-JY8QFUQ01A0939\t204\t207\tFR3\n-JY8QFUQ01A0939\t257\t260\tFR3\n-JY8QFUQ01A0939\t269\t272\tFR3\n-JY8QFUQ01A0939\t29'..b'5\tFR2\n-JY8QFUQ01DG5KX\t146\t149\tFR2\n-JY8QFUQ01DG5KX\t162\t165\tFR2\n-JY8QFUQ01DG5KX\t187\t190\tCDR2\n-JY8QFUQ01DG5KX\t285\t288\tFR3\n-JY8QFUQ01DG5KX\t297\t300\tFR3\n-JY8QFUQ01DG6GC\t8\t11\tFR1\n-JY8QFUQ01DG6GC\t103\t106\tCDR1\n-JY8QFUQ01DG6GC\t132\t135\tFR2\n-JY8QFUQ01DG6GC\t139\t142\tFR2\n-JY8QFUQ01DG6GC\t146\t149\tFR2\n-JY8QFUQ01DG6GC\t159\t162\tFR2\n-JY8QFUQ01DG6GC\t187\t190\tCDR2\n-JY8QFUQ01DG6GC\t274\t277\tFR3\n-JY8QFUQ01DG6GC\t285\t288\tFR3\n-JY8QFUQ01DG6GC\t297\t300\tFR3\n-JY8QFUQ01DHXHT\t2\t5\tFR1\n-JY8QFUQ01DHXHT\t8\t11\tFR1\n-JY8QFUQ01DHXHT\t82\t85\tCDR1\n-JY8QFUQ01DHXHT\t100\t103\tCDR1\n-JY8QFUQ01DHXHT\t106\t109\tCDR1\n-JY8QFUQ01DHXHT\t118\t121\tFR2\n-JY8QFUQ01DHXHT\t146\t149\tFR2\n-JY8QFUQ01DHXHT\t163\t166\tFR2-CDR2\n-JY8QFUQ01DHXHT\t190\t193\tCDR2\n-JY8QFUQ01DHXHT\t269\t272\tFR3\n-JY8QFUQ01DHXHT\t274\t277\tFR3\n-JY8QFUQ01DHXHT\t297\t300\tFR3\n-JY8QFUQ01DI39D\t8\t11\tFR1\n-JY8QFUQ01DI39D\t12\t15\tFR1\n-JY8QFUQ01DI39D\t24\t27\tFR1\n-JY8QFUQ01DI39D\t72\t75\tFR1\n-JY8QFUQ01DI39D\t132\t135\tFR2\n-JY8QFUQ01DI39D\t146\t149\tFR2\n-JY8QFUQ01DI39D\t163\t166\tFR2-CDR2\n-JY8QFUQ01DI39D\t209\t212\tFR3\n-JY8QFUQ01DI39D\t220\t223\tFR3\n-JY8QFUQ01DI39D\t269\t272\tFR3\n-JY8QFUQ01DI39D\t274\t277\tFR3\n-JY8QFUQ01DIBNC\t8\t11\tFR1\n-JY8QFUQ01DIBNC\t82\t85\tCDR1\n-JY8QFUQ01DIBNC\t103\t106\tCDR1\n-JY8QFUQ01DIBNC\t118\t121\tFR2\n-JY8QFUQ01DIBNC\t128\t131\tFR2\n-JY8QFUQ01DIBNC\t161\t164\tFR2\n-JY8QFUQ01DIBNC\t190\t193\tCDR2\n-JY8QFUQ01DIBNC\t237\t240\tFR3\n-JY8QFUQ01DIBNC\t257\t260\tFR3\n-JY8QFUQ01DIBNC\t269\t272\tFR3\n-JY8QFUQ01DIBNC\t274\t277\tFR3\n-JY8QFUQ01DJFIZ\t8\t11\tFR1\n-JY8QFUQ01DJFIZ\t31\t34\tFR1\n-JY8QFUQ01DJFIZ\t36\t39\tFR1\n-JY8QFUQ01DJFIZ\t103\t106\tCDR1\n-JY8QFUQ01DJFIZ\t118\t121\tFR2\n-JY8QFUQ01DJFIZ\t132\t135\tFR2\n-JY8QFUQ01DJFIZ\t146\t149\tFR2\n-JY8QFUQ01DJFIZ\t162\t165\tFR2\n-JY8QFUQ01DJFIZ\t172\t175\tCDR2\n-JY8QFUQ01DJFIZ\t187\t190\tCDR2\n-JY8QFUQ01DJFIZ\t224\t227\tFR3\n-JY8QFUQ01DLDLD\t8\t11\tFR1\n-JY8QFUQ01DLDLD\t24\t27\tFR1\n-JY8QFUQ01DLDLD\t60\t63\tFR1\n-JY8QFUQ01DLDLD\t72\t75\tFR1\n-JY8QFUQ01DLDLD\t106\t109\tCDR1\n-JY8QFUQ01DLDLD\t146\t149\tFR2\n-JY8QFUQ01DLDLD\t187\t190\tCDR2\n-JY8QFUQ01DLDLD\t196\t199\tFR3\n-JY8QFUQ01DLDLD\t209\t212\tFR3\n-JY8QFUQ01DLDLD\t220\t223\tFR3\n-JY8QFUQ01DLDLD\t253\t256\tFR3\n-JY8QFUQ01DLDLD\t269\t272\tFR3\n-JY8QFUQ01DLDLD\t274\t277\tFR3\n-JY8QFUQ01DMF0A\t8\t11\tFR1\n-JY8QFUQ01DMF0A\t106\t109\tCDR1\n-JY8QFUQ01DMF0A\t146\t149\tFR2\n-JY8QFUQ01DMF0A\t190\t193\tCDR2\n-JY8QFUQ01DMF0A\t237\t240\tFR3\n-JY8QFUQ01DMF0A\t257\t260\tFR3\n-JY8QFUQ01DMF0A\t269\t272\tFR3\n-JY8QFUQ01DMF0A\t274\t277\tFR3\n-JY8QFUQ01DOVL5\t8\t11\tFR1\n-JY8QFUQ01DOVL5\t103\t106\tCDR1\n-JY8QFUQ01DOVL5\t112\t115\tCDR1\n-JY8QFUQ01DOVL5\t132\t135\tFR2\n-JY8QFUQ01DOVL5\t139\t142\tFR2\n-JY8QFUQ01DOVL5\t146\t149\tFR2\n-JY8QFUQ01DOVL5\t159\t162\tFR2\n-JY8QFUQ01DOVL5\t187\t190\tCDR2\n-JY8QFUQ01DOVL5\t285\t288\tFR3\n-JY8QFUQ01DOVL5\t297\t300\tFR3\n-JY8QFUQ01DPT8R\t8\t11\tFR1\n-JY8QFUQ01DPT8R\t31\t34\tFR1\n-JY8QFUQ01DPT8R\t36\t39\tFR1\n-JY8QFUQ01DPT8R\t103\t106\tCDR1\n-JY8QFUQ01DPT8R\t132\t135\tFR2\n-JY8QFUQ01DPT8R\t146\t149\tFR2\n-JY8QFUQ01DPT8R\t187\t190\tCDR2\n-JY8QFUQ01DPT8R\t196\t199\tFR3\n-JY8QFUQ01DPT8R\t297\t300\tFR3\n-JY8QFUQ01DUD3U\t8\t11\tFR1\n-JY8QFUQ01DUD3U\t31\t34\tFR1\n-JY8QFUQ01DUD3U\t36\t39\tFR1\n-JY8QFUQ01DUD3U\t103\t106\tCDR1\n-JY8QFUQ01DUD3U\t118\t121\tFR2\n-JY8QFUQ01DUD3U\t132\t135\tFR2\n-JY8QFUQ01DUD3U\t146\t149\tFR2\n-JY8QFUQ01DUD3U\t162\t165\tFR2\n-JY8QFUQ01DUD3U\t172\t175\tCDR2\n-JY8QFUQ01DUD3U\t187\t190\tCDR2\n-JY8QFUQ01DUD3U\t224\t227\tFR3\n-JY8QFUQ01DV4HU\t8\t11\tFR1\n-JY8QFUQ01DV4HU\t31\t34\tFR1\n-JY8QFUQ01DV4HU\t103\t106\tCDR1\n-JY8QFUQ01DV4HU\t118\t121\tFR2\n-JY8QFUQ01DV4HU\t132\t135\tFR2\n-JY8QFUQ01DV4HU\t146\t149\tFR2\n-JY8QFUQ01DV4HU\t170\t173\tCDR2\n-JY8QFUQ01DV4HU\t297\t300\tFR3\n-JY8QFUQ01DV8LF\t8\t11\tFR1\n-JY8QFUQ01DV8LF\t31\t34\tFR1\n-JY8QFUQ01DV8LF\t36\t39\tFR1\n-JY8QFUQ01DV8LF\t103\t106\tCDR1\n-JY8QFUQ01DV8LF\t132\t135\tFR2\n-JY8QFUQ01DV8LF\t146\t149\tFR2\n-JY8QFUQ01DV8LF\t187\t190\tCDR2\n-JY8QFUQ01DV8LF\t297\t300\tFR3\n-JY8QFUQ01DVBU0\t8\t11\tFR1\n-JY8QFUQ01DVBU0\t31\t34\tFR1\n-JY8QFUQ01DVBU0\t36\t39\tFR1\n-JY8QFUQ01DVBU0\t103\t106\tCDR1\n-JY8QFUQ01DVBU0\t132\t135\tFR2\n-JY8QFUQ01DVBU0\t146\t149\tFR2\n-JY8QFUQ01DVBU0\t187\t190\tCDR2\n-JY8QFUQ01DVBU0\t196\t199\tFR3\n-JY8QFUQ01DVBU0\t297\t300\tFR3\n-JY8QFUQ01DXDOM\t8\t11\tFR1\n-JY8QFUQ01DXDOM\t103\t106\tCDR1\n-JY8QFUQ01DXDOM\t112\t115\tCDR1\n-JY8QFUQ01DXDOM\t132\t135\tFR2\n-JY8QFUQ01DXDOM\t146\t149\tFR2\n-JY8QFUQ01DXDOM\t169\t172\tCDR2\n-JY8QFUQ01DXDOM\t184\t187\tCDR2\n-JY8QFUQ01DXDOM\t297\t300\tFR3\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/data/intermediate_files/merged.txt --- a/tests/data/intermediate_files/merged.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| [ |
| b'@@ -1,1577 +0,0 @@\n-Sequence.ID\tSequence.number\tFunctionality\tV.GENE.and.allele\tV.REGION.score\tV.REGION.identity..\tV.REGION.identity.nt\tV.REGION.identity....with.ins.del.events.\tV.REGION.identity.nt..with.ins.del.events.\tJ.GENE.and.allele\tJ.REGION.score\tJ.REGION.identity..\tJ.REGION.identity.nt\tD.GENE.and.allele\tD.REGION.reading.frame\tCDR1.IMGT.length\tCDR2.IMGT.length\tCDR3.IMGT.length\tCDR.IMGT.lengths\tFR.IMGT.lengths\tAA.JUNCTION\tJUNCTION.frame\tOrientation\tFunctionality.comment\tV.REGION.potential.ins.del\tJ.GENE.and.allele.comment\tV.REGION.insertions\tV.REGION.deletions\tSequence\tX\tbest_match\tnt_hit_percentage\tchunk_hit_percentage\tstart_locations\tV.REGION\tFR1.IMGT\tCDR1.IMGT\tFR2.IMGT\tCDR2.IMGT\tFR3.IMGT\tCDR3.IMGT\tV.REGION.Nb.of.positions.including.IMGT.gaps..nt.\tV.REGION.Nb.of.nucleotides\tV.REGION.Nb.of.identical.nucleotides\tV.REGION.Nb.of.mutations\tV.REGION.Nb.of.silent.mutations\tV.REGION.Nb.of.nonsilent.mutations\tV.REGION.a.g\tV.REGION.g.a\tV.REGION.c.t\tV.REGION.t.c\tV.REGION.a.c\tV.REGION.c.a\tV.REGION.a.t\tV.REGION.t.a\tV.REGION.g.c\tV.REGION.c.g\tV.REGION.g.t\tV.REGION.t.g\tFR1.IMGT.Nb.of.positions.including.IMGT.gaps..nt.\tFR1.IMGT.Nb.of.nucleotides\tFR1.IMGT.Nb.of.identical.nucleotides\tFR1.IMGT.Nb.of.mutations\tFR1.IMGT.Nb.of.silent.mutations\tFR1.IMGT.Nb.of.nonsilent.mutations\tFR1.IMGT.a.g\tFR1.IMGT.g.a\tFR1.IMGT.c.t\tFR1.IMGT.t.c\tFR1.IMGT.a.c\tFR1.IMGT.c.a\tFR1.IMGT.a.t\tFR1.IMGT.t.a\tFR1.IMGT.g.c\tFR1.IMGT.c.g\tFR1.IMGT.g.t\tFR1.IMGT.t.g\tCDR1.IMGT.Nb.of.positions.including.IMGT.gaps..nt.\tCDR1.IMGT.Nb.of.nucleotides\tCDR1.IMGT.Nb.of.identical.nucleotides\tCDR1.IMGT.Nb.of.mutations\tCDR1.IMGT.Nb.of.silent.mutations\tCDR1.IMGT.Nb.of.nonsilent.mutations\tCDR1.IMGT.a.g\tCDR1.IMGT.g.a\tCDR1.IMGT.c.t\tCDR1.IMGT.t.c\tCDR1.IMGT.a.c\tCDR1.IMGT.c.a\tCDR1.IMGT.a.t\tCDR1.IMGT.t.a\tCDR1.IMGT.g.c\tCDR1.IMGT.c.g\tCDR1.IMGT.g.t\tCDR1.IMGT.t.g\tFR2.IMGT.Nb.of.positions.including.IMGT.gaps..nt.\tFR2.IMGT.Nb.of.nucleotides\tFR2.IMGT.Nb.of.identical.nucleotides\tFR2.IMGT.Nb.of.mutations\tFR2.IMGT.Nb.of.silent.mutations\tFR2.IMGT.Nb.of.nonsilent.mutations\tFR2.IMGT.a.g\tFR2.IMGT.g.a\tFR2.IMGT.c.t\tFR2.IMGT.t.c\tFR2.IMGT.a.c\tFR2.IMGT.c.a\tFR2.IMGT.a.t\tFR2.IMGT.t.a\tFR2.IMGT.g.c\tFR2.IMGT.c.g\tFR2.IMGT.g.t\tFR2.IMGT.t.g\tCDR2.IMGT.Nb.of.positions.including.IMGT.gaps..nt.\tCDR2.IMGT.Nb.of.nucleotides\tCDR2.IMGT.Nb.of.identical.nucleotides\tCDR2.IMGT.Nb.of.mutations\tCDR2.IMGT.Nb.of.silent.mutations\tCDR2.IMGT.Nb.of.nonsilent.mutations\tCDR2.IMGT.a.g\tCDR2.IMGT.g.a\tCDR2.IMGT.c.t\tCDR2.IMGT.t.c\tCDR2.IMGT.a.c\tCDR2.IMGT.c.a\tCDR2.IMGT.a.t\tCDR2.IMGT.t.a\tCDR2.IMGT.g.c\tCDR2.IMGT.c.g\tCDR2.IMGT.g.t\tCDR2.IMGT.t.g\tFR3.IMGT.Nb.of.positions.including.IMGT.gaps..nt.\tFR3.IMGT.Nb.of.nucleotides\tFR3.IMGT.Nb.of.identical.nucleotides\tFR3.IMGT.Nb.of.mutations\tFR3.IMGT.Nb.of.silent.mutations\tFR3.IMGT.Nb.of.nonsilent.mutations\tFR3.IMGT.a.g\tFR3.IMGT.g.a\tFR3.IMGT.c.t\tFR3.IMGT.t.c\tFR3.IMGT.a.c\tFR3.IMGT.c.a\tFR3.IMGT.a.t\tFR3.IMGT.t.a\tFR3.IMGT.g.c\tFR3.IMGT.c.g\tFR3.IMGT.g.t\tFR3.IMGT.t.g\tCDR3.IMGT.Nb.of.positions.including.IMGT.gaps..nt.\tCDR3.IMGT.Nb.of.nucleotides\tCDR3.IMGT.Nb.of.identical.nucleotides\tCDR3.IMGT.Nb.of.mutations\tCDR3.IMGT.Nb.of.silent.mutations\tCDR3.IMGT.Nb.of.nonsilent.mutations\tCDR3.IMGT.a.g\tCDR3.IMGT.g.a\tCDR3.IMGT.c.t\tCDR3.IMGT.t.c\tCDR3.IMGT.a.c\tCDR3.IMGT.c.a\tCDR3.IMGT.a.t\tCDR3.IMGT.t.a\tCDR3.IMGT.g.c\tCDR3.IMGT.c.g\tCDR3.IMGT.g.t\tCDR3.IMGT.t.g\tX.a.t.a\tt.a.t.\tX.a.g.g.c.t..a.t.\tX.a.t..a.g.c.c.t.\tFR1.IMGT.seq\tCDR1.IMGT.seq\tFR2.IMGT.seq\tCDR2.IMGT.seq\tFR3.IMGT.seq\tCDR3.IMGT.seq\tCDR3.IMGT.AA\tVGene\tDGene\tJGene\tunique.def\tVRegionMutations\tVRegionNucleotides\ttransitionMutations\ttransversionMutations\ttransitionMutationsAtGC\ttotalMutationsAtGC\ttransitionMutationsAtAT\ttotalMutationsAtAT\tsilentMutationsFR\tsilentMutationsCDR\tnonSilentMutationsFR\tnonSilentMutationsCDR\n-JY8QFUQ01A0005\t14683\tproductive\tHomsap IGHV4-39*03 F\t929\t91.36\t201/220 nt\tNA\t\tHomsap IGHJ3*01 F\t232\t96\t48/50 nt\tHomsap IGHD3-22*01 F\t3\t10\t7\t17\t10.7.17\t[1.17.38.11]\tCARSITLTVVVMNDAFDVW\tin-frame\t+\t\t\t\t\t\ttctccggtggctccatcaacagtagaaattattattggggctggatccgccagcccccagggaagggtttggagtg'..b"ected insertion/deletion\tThe submitted sequence and the closest germline V-GENE allele show different CDR2-IMGT amino acid lengths (7 AA in JY8QFUQ01DXDOM ; 8 AA in Homsap_IGHV3-21*01), and low V-REGION identity (83,26% ) this may indicate potential nucleotide insertion(s) and/or deletion(s) which are not dealt in this release\t\tin FR3-IMGT at codon 81 of V-REGION: 'G' (1 nucleotides at position 144 to 144 in the user submitted sequence), (cause frameshift);\t\tcctctggattcagtttcactggttttaccgtgatctgggtccgccaggctccaaggaaggggctggaatggatctcatccgtcactactaatggtctcacgtactacgcagactcagtagagggccgattcaacatctccaggGgacaacgccaacaatttagtgtttctgcaaatgaacagcctgagagtcgaggacactggtgtatattattgtgcgagagataaagtgatctctgccggacgggacgtctggggccaagggaccacggtcaccgtctcctcaacatccccgaccagccccaaggtcttcccgctgagcctcgacagcaccccccgaagatgggaacgtggtcgtcgcatgcctggtccagggcttcttcccccc\tNA\tunmatched, IGA2\t57\t89\t[283, 284]\tc86>g,T29>S(+ - +)|c87>t,T29>S(+ - +)|g104>c,S35>T(+ - +)|a106>g,S36>G(+ + -)|c108>t,S36>G(+ + -)|a110>t,Y37>F(- + -)|g113>c,S38>T(+ - +)|a115>g,M39>V(+ - -)|a119>t,N40>I(- - -)|g139>a,G47>R(- - -)|g153>a|g157>a,V53>I(+ - +)|a166>g,I56>V(+ - +)|t168>c,I56>V(+ - +)|g170>c,S57>T(+ - +)|g173>c,S58>T(+ - +)|g176>a,S59>N(- - -)|a187>g,S63>G(+ + -)|t190>c,Y64>L(- - -)|a191>t,Y64>L(- - -)|t194>c,I65>T(- - -)|a195>g,I65>T(- - -)|g213>a|a214>g,K72>E(+ - -)|c230>a,T77>N(- + -)|a240>g|g252>c,K84>N(+ - -)|c255>t|c257>t,S86>L(- - -)|c259>g,L87>V(+ - +)|a263>t,Y88>F(- + -)|c287>t,A96>V(+ - +)|g297>t|c299>g,A100>G(- + -)|g303>a|c309>t|\t\tc86>g,T29>S(+ - +)|c87>t,T29>S(+ - +)|g104>c,S35>T(+ - +)|a106>g,S36>G(+ + -)|c108>t,S36>G(+ + -)|a110>t,Y37>F(- + -)|g113>c,S38>T(+ - +)|\ta115>g,M39>V(+ - -)|a119>t,N40>I(- - -)|g139>a,G47>R(- - -)|g153>a|g157>a,V53>I(+ - +)|\ta166>g,I56>V(+ - +)|t168>c,I56>V(+ - +)|g170>c,S57>T(+ - +)|g173>c,S58>T(+ - +)|g176>a,S59>N(- - -)|a187>g,S63>G(+ + -)|t190>c,Y64>L(- - -)|a191>t,Y64>L(- - -)|t194>c,I65>T(- - -)|a195>g,I65>T(- - -)|\tg213>a|a214>g,K72>E(+ - -)|c230>a,T77>N(- + -)|a240>g|g252>c,K84>N(+ - -)|c255>t|c257>t,S86>L(- - -)|c259>g,L87>V(+ - +)|a263>t,Y88>F(- + -)|c287>t,A96>V(+ - +)|g297>t|c299>g,A100>G(- + -)|g303>a|c309>t|\t\t320\t223\t187\t36\t7\t29\t7\t6\t6\t3\t0\t1\t4\t0\t5\t3\t1\t0\t78\t5\t5\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t36\t24\t17\t7\t0\t7\t1\t0\t2\t0\t0\t0\t1\t0\t2\t1\t0\t0\t51\t51\t46\t5\t1\t4\t1\t3\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t30\t21\t11\t10\t0\t10\t3\t1\t0\t3\t0\t0\t1\t0\t2\t0\t0\t0\t117\t114\t100\t14\t6\t8\t2\t2\t4\t0\t0\t1\t1\t0\t1\t2\t1\t0\t8\t8\t8\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\taa,40-41(FR1)|ta,105-106(CDR1)|ta,109-110(CDR1)|ta,111-112(CDR1)|aa,118-119(FR2)|aa,142-143(FR2)|ta,168-169(CDR2)|ta,171-172(CDR2)|ta,174-175(CDR2)|ta,186-187(CDR2)|ta,190-191(CDR2)|ta,194-195(CDR2)|ta,196-197(FR3)|ta,199-200(FR3)|aa,214-215(FR3)|aa,244-245(FR3)|aa,250-251(FR3)|aa,253-254(FR3)|ta,262-263(FR3)|aa,269-270(FR3)|aa,274-275(FR3)|ta,304-305(FR3)|ta,307-308(FR3)|\ttt,82-83(CDR1)|tt,88-89(CDR1)|ta,105-106(CDR1)|ta,109-110(CDR1)|ta,111-112(CDR1)|tt,167-168(CDR2)|ta,171-172(CDR2)|ta,174-175(CDR2)|ta,186-187(CDR2)|tt,189-190(CDR2)|ta,194-195(CDR2)|ta,196-197(FR3)|ta,199-200(FR3)|tt,226-227(FR3)|ta,262-263(FR3)|ta,304-305(FR3)|tt,306-307(FR3)|\tagct,8-11(FR1)|agta,103-106(CDR1)|agca,112-115(CDR1)|ggct,132-135(FR2)|ggct,146-149(FR2)|agta,169-172(CDR2)|agta,184-187(CDR2)|ggct,297-300(FR3)|\tagct,8-11(FR1)|agcc,41-44(FR1)|agcc,72-75(FR1)|agct,106-109(CDR1)|aact,118-121(FR2)|tact,196-199(FR3)|aact,253-256(FR3)|agcc,277-280(FR3)|agcc,285-288(FR3)|tact,307-310(FR3)|\tcctct\tggattcagtttcactggttttacc\tgtgatctgggtccgccaggctccaaggaaggggctggaatggatctcatcc\tgtcactactaatggtctcacg\ttactacgcagactcagtagagggccgattcaacatctccagggacaacgccaacaatttagtgtttctgcaaatgaacagcctgagagtcgaggacactggtgtatattattgt\tgcgagagataaagtgatctctgccggacgggacgtc\tARDKVISAGRDV\tIGHV3-21\tIGHD2-15\tIGHJ6\tggattcagtttcactggttttacc gtgatctgggtccgccaggctccaaggaaggggctggaatggatctcatcc gtcactactaatggtctcacg tactacgcagactcagtagagggccgattcaacatctccagggacaacgccaacaatttagtgtttctgcaaatgaacagcctgagagtcgaggacactggtgtatattattgt gcgagagataaagtgatctctgccggacgggacgtc unmatched\t36\t210\t22\t14\t12\t22\t10\t14\t7\t0\t12\t17\n" |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/data/intermediate_files/mutation_in_motifs.txt --- a/tests/data/intermediate_files/mutation_in_motifs.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| b'@@ -1,906816 +0,0 @@\n-JY8QFUQ01A0005\t105\tCDR1\tt\ta\t35\tS\tR\tWA\t105\t106\t(- - -)\n-JY8QFUQ01A0005\t105\tCDR1\tt\ta\t35\tS\tR\tTW\t105\t106\t(- - -)\n-JY8QFUQ01A0005\t107\tCDR1\tg\ta\t36\tS\tN\tRGYW\t106\t109\t(- - -)\n-JY8QFUQ01A0005\t111\tCDR1\tc\tt\tNone\tNone\tNone\tWRCY\t109\t112\t\n-JY8QFUQ01A0005\t147\tFR2\tg\tt\tNone\tNone\tNone\tRGYW\t146\t149\t\n-JY8QFUQ01A0005\t148\tFR2\tc\tt\tNone\tNone\tNone\tRGYW\t146\t149\t\n-JY8QFUQ01A0005\t164\tFR2-CDR2\tg\ta\t55\tS\tN\tRGYW\t163\t166\t(- - -)\n-JY8QFUQ01A0005\t191\tCDR2\tg\ta\t64\tS\tN\tRGYW\t190\t193\t(- - -)\n-JY8QFUQ01A0005\t204\tFR3\tc\tt\tNone\tNone\tNone\tWRCY\t202\t205\t\n-JY8QFUQ01A0005\t275\tFR3\tg\tc\t92\tS\tT\tRGYW\t274\t277\t(+ - +)\n-JY8QFUQ01A0005\t275\tFR3\tg\tc\t92\tS\tT\tWRCY\t274\t277\t(+ - +)\n-JY8QFUQ01A004N\t102\tCDR1\tt\tg\t34\tS\tR\tRGYW\t100\t103\t(- - -)\n-JY8QFUQ01A004N\t102\tCDR1\tt\tg\t34\tS\tR\tWA\t102\t103\t(- - -)\n-JY8QFUQ01A004N\t102\tCDR1\tt\tg\t34\tS\tR\tTW\t102\t103\t(- - -)\n-JY8QFUQ01A004N\t106\tCDR1\ta\tg\t36\tS\tA\tRGYW\t106\t109\t(- + -)\n-JY8QFUQ01A004N\t106\tCDR1\ta\tg\t36\tS\tA\tWA\t105\t106\t(- + -)\n-JY8QFUQ01A004N\t106\tCDR1\ta\tg\t36\tS\tA\tTW\t105\t106\t(- + -)\n-JY8QFUQ01A004N\t107\tCDR1\tg\tc\t36\tS\tA\tRGYW\t106\t109\t(- + -)\n-JY8QFUQ01A004N\t108\tCDR1\tt\tc\t36\tS\tA\tRGYW\t106\t109\t(- + -)\n-JY8QFUQ01A004N\t108\tCDR1\tt\tc\t36\tS\tA\tTW\t108\t109\t(- + -)\n-JY8QFUQ01A004N\t164\tFR2-CDR2\tg\tc\t55\tS\tT\tRGYW\t163\t166\t(+ - +)\n-JY8QFUQ01A004N\t165\tFR2-CDR2\tt\tc\t55\tS\tT\tRGYW\t163\t166\t(+ - +)\n-JY8QFUQ01A004N\t165\tFR2-CDR2\tt\tc\t55\tS\tT\tWA\t165\t166\t(+ - +)\n-JY8QFUQ01A004N\t165\tFR2-CDR2\tt\tc\t55\tS\tT\tTW\t165\t166\t(+ - +)\n-JY8QFUQ01A004N\t191\tCDR2\tg\tc\t64\tS\tT\tRGYW\t190\t193\t(+ - +)\n-JY8QFUQ01A004N\t200\tFR3\ta\tc\t67\tY\tS\tWA\t199\t200\t(+ - -)\n-JY8QFUQ01A004N\t200\tFR3\ta\tc\t67\tY\tS\tTW\t199\t200\t(+ - -)\n-JY8QFUQ01A004N\t204\tFR3\tc\tt\tNone\tNone\tNone\tWRCY\t202\t205\t\n-JY8QFUQ01A004N\t234\tFR3\ta\tg\t78\tI\tM\tWA\t233\t234\t(+ + -)\n-JY8QFUQ01A004N\t234\tFR3\ta\tg\t78\tI\tM\tTW\t233\t234\t(+ + -)\n-JY8QFUQ01A004N\t240\tFR3\ta\tg\t80\tV\tL\tWA\t239\t240\t(+ - +)\n-JY8QFUQ01A004N\t240\tFR3\ta\tg\t80\tV\tL\tTW\t239\t240\t(+ - +)\n-JY8QFUQ01A004N\t259\tFR3\tt\ta\t87\tF\tI\tTW\t259\t260\t(+ - -)\n-JY8QFUQ01A004N\t275\tFR3\tg\ta\t92\tS\tN\tRGYW\t274\t277\t(- - -)\n-JY8QFUQ01A004N\t275\tFR3\tg\ta\t92\tS\tN\tWRCY\t274\t277\t(- - -)\n-JY8QFUQ01A004N\t276\tFR3\tc\tt\t92\tS\tN\tRGYW\t274\t277\t(- - -)\n-JY8QFUQ01A004N\t276\tFR3\tc\tt\t92\tS\tN\tWRCY\t274\t277\t(- - -)\n-JY8QFUQ01A006G\t83\tCDR1\tg\ta\t28\tG\tD\tRGYW\t82\t85\t(- - -)\n-JY8QFUQ01A006G\t106\tCDR1\ta\tc\t36\tS\tH\tRGYW\t106\t109\t(+ - -)\n-JY8QFUQ01A006G\t106\tCDR1\ta\tc\t36\tS\tH\tWA\t105\t106\t(+ - -)\n-JY8QFUQ01A006G\t106\tCDR1\ta\tc\t36\tS\tH\tTW\t105\t106\t(+ - -)\n-JY8QFUQ01A006G\t107\tCDR1\tg\ta\t36\tS\tH\tRGYW\t106\t109\t(+ - -)\n-JY8QFUQ01A006G\t143\tFR2\ta\tg\t48\tK\tR\tWA\t142\t143\t(+ + +)\n-JY8QFUQ01A006G\t147\tFR2\tg\ta\tNone\tNone\tNone\tRGYW\t146\t149\t\n-JY8QFUQ01A006G\t169\tCDR2\tt\tc\t57\tY\tH\tWA\t169\t170\t(+ - -)\n-JY8QFUQ01A006G\t169\tCDR2\tt\tc\t57\tY\tH\tTW\t169\t170\t(+ - -)\n-JY8QFUQ01A006G\t171\tCDR2\tt\tc\t57\tY\tH\tTW\t171\t172\t(+ - -)\n-JY8QFUQ01A006G\t174\tCDR2\tt\tc\tNone\tNone\tNone\tWA\t174\t175\t\n-JY8QFUQ01A006G\t174\tCDR2\tt\tc\tNone\tNone\tNone\tTW\t174\t175\t\n-JY8QFUQ01A006G\t205\tFR3\tc\tt\t69\tP\tW\tWRCY\t202\t205\t(- - -)\n-JY8QFUQ01A006G\t240\tFR3\ta\tg\tNone\tNone\tNone\tWA\t239\t240\t\n-JY8QFUQ01A006G\t240\tFR3\ta\tg\tNone\tNone\tNone\tTW\t239\t240\t\n-JY8QFUQ01A006G\t251\tFR3\ta\tg\t84\tK\tS\tWA\t250\t251\t(- - -)\n-JY8QFUQ01A006G\t269\tFR3\ta\tg\t90\tK\tR\tRGYW\t269\t272\t(+ + +)\n-JY8QFUQ01A006G\t269\tFR3\ta\tg\t90\tK\tR\tWRCY\t269\t272\t(+ + +)\n-JY8QFUQ01A006G\t269\tFR3\ta\tg\t90\tK\tR\tWA\t268\t269\t(+ + +)\n-JY8QFUQ01A006G\t271\tFR3\tc\tt\tNone\tNone\tNone\tRGYW\t269\t272\t\n-JY8QFUQ01A006G\t271\tFR3\tc\tt\tNone\tNone\tNone\tWRCY\t269\t272\t\n-JY8QFUQ01A006G\t276\tFR3\tc\tg\t92\tS\tR\tRGYW\t274\t277\t(- - -)\n-JY8QFUQ01A006G\t276\tFR3\tc\tg\t92\tS\tR\tWRCY\t274\t277\t(- - -)\n-JY8QFUQ01A006G\t306\tFR3\tt\tc\tNone\tNone\tNone\tTW\t306\t307\t\n-JY8QFUQ01A018V\t83\tCDR1\tg\tt\t28\tG\tV\tRGYW\t82\t85\t(- - -)\n-JY8QFUQ01A018V\t104\tCDR1\tg\ta\t35\tG\tE\tRGYW\t103\t106\t(- - -)\n-JY8QFUQ01A018V\t105\tCDR1\tt\tg\t35\tG\tE\tRGYW\t103\t106\t(- - -)\n-JY8QFUQ01A018V\t105\tCDR1\tt\tg\t35\tG\tE\tWA\t105\t106\t(- - -)\n-JY8QFUQ01A018V\t105\tCDR1\tt\tg\t35\tG\tE\tTW\t105\t106\t(- - -)\n-JY8QFUQ01A018V\t106\tCDR1\ta\tt\tNone\tNone\tNone\tRGYW\t103\t106\t\n-JY8QFUQ01A018V\t106\tCDR1\ta\tt\tNone\tNone\tNone\tWA\t105\t106\t\n-JY8QFUQ01A018V\t106\tCDR1\ta\tt\tNone\tNone\tNone\tTW\t105\t106\t\n-JY8QFUQ01A018V\t108\tCDR1\tt\tc\tNone\tNone\tNone\tTW\t108\t109\t\n-JY8QFUQ01A018V\t111\tCDR1\tc\tt\tNone\tNone\tNone\tWRCY\t109\t112'..b'103\t106\t(+ - -)\n-JY8QFUQ01DV4HU\t104\tCDR1\tg\tc\t35\tS\tP\tRGYW\t103\t106\t(+ - -)\n-JY8QFUQ01DV4HU\t108\tCDR1\tc\ta\t36\tS\tR\tWRCY\t106\t109\t(- - -)\n-JY8QFUQ01DV4HU\t111\tCDR1\tt\tc\tNone\tNone\tNone\tTW\t111\t112\tNone\n-JY8QFUQ01DV4HU\t119\tFR2\tg\ta\t40\tS\tN\tRGYW\t118\t121\t(- - -)\n-JY8QFUQ01DV4HU\t119\tFR2\tg\ta\t40\tS\tN\tWRCY\t118\t121\t(- - -)\n-JY8QFUQ01DV4HU\t120\tFR2\tc\tt\t40\tS\tN\tRGYW\t118\t121\t(- - -)\n-JY8QFUQ01DV4HU\t120\tFR2\tc\tt\t40\tS\tN\tWRCY\t118\t121\t(- - -)\n-JY8QFUQ01DV4HU\t193\tCDR2\ta\tg\t65\tK\tE\tWA\t193\t194\t(+ - -)\n-JY8QFUQ01DV4HU\t196\tFR3\tt\ta\t66\tY\tN\tWRCY\t196\t199\t(- - -)\n-JY8QFUQ01DV4HU\t196\tFR3\tt\ta\t66\tY\tN\tWA\t196\t197\t(- - -)\n-JY8QFUQ01DV4HU\t196\tFR3\tt\ta\t66\tY\tN\tTW\t196\t197\t(- - -)\n-JY8QFUQ01DV4HU\t200\tFR3\ta\tt\t67\tY\tF\tWA\t199\t200\t(- + -)\n-JY8QFUQ01DV4HU\t200\tFR3\ta\tt\t67\tY\tF\tTW\t199\t200\t(- + -)\n-JY8QFUQ01DV4HU\t245\tFR3\ta\tg\t82\tN\tS\tWA\t244\t245\t(- - -)\n-JY8QFUQ01DV4HU\t255\tFR3\tc\tt\tNone\tNone\tNone\tWRCY\t253\t256\tNone\n-JY8QFUQ01DV4HU\t263\tFR3\ta\tc\t88\tY\tS\tWA\t262\t263\t(+ - -)\n-JY8QFUQ01DV4HU\t263\tFR3\ta\tc\t88\tY\tS\tTW\t262\t263\t(+ - -)\n-JY8QFUQ01DV4HU\t287\tFR3\tc\tt\t96\tA\tV\tWRCY\t285\t288\t(+ - +)\n-JY8QFUQ01DV4HU\t309\tFR3\tc\tt\tNone\tNone\tNone\tWRCY\t307\t310\tNone\n-JY8QFUQ01DV8LF\t106\tCDR1\ta\tc\t36\tS\tR\tRGYW\t103\t106\t(- - -)\n-JY8QFUQ01DV8LF\t106\tCDR1\ta\tc\t36\tS\tR\tWRCY\t106\t109\t(- - -)\n-JY8QFUQ01DV8LF\t106\tCDR1\ta\tc\t36\tS\tR\tWA\t105\t106\t(- - -)\n-JY8QFUQ01DV8LF\t106\tCDR1\ta\tc\t36\tS\tR\tTW\t105\t106\t(- - -)\n-JY8QFUQ01DV8LF\t147\tFR2\tg\tc\tNone\tNone\tNone\tRGYW\t146\t149\tNone\n-JY8QFUQ01DV8LF\t171\tCDR2\tt\ta\t57\tN\tK\tWA\t171\t172\t(+ - -)\n-JY8QFUQ01DV8LF\t171\tCDR2\tt\ta\t57\tN\tK\tTW\t171\t172\t(+ - -)\n-JY8QFUQ01DV8LF\t188\tCDR2\tg\tt\t63\tS\tI\tRGYW\t187\t190\t(- - -)\n-JY8QFUQ01DV8LF\t306\tFR3\tt\tc\tNone\tNone\tNone\tTW\t306\t307\tNone\n-JY8QFUQ01DVBU0\t167\tCDR2\tt\tg\t56\tI\tS\tTW\t167\t168\t(- - -)\n-JY8QFUQ01DVBU0\t188\tCDR2\tg\tc\t63\tS\tT\tRGYW\t187\t190\t(+ - +)\n-JY8QFUQ01DVBU0\t190\tCDR2\ta\tg\t64\tS\tD\tRGYW\t187\t190\t(- - -)\n-JY8QFUQ01DVBU0\t190\tCDR2\ta\tg\t64\tS\tD\tWA\t189\t190\t(- - -)\n-JY8QFUQ01DVBU0\t190\tCDR2\ta\tg\t64\tS\tD\tTW\t189\t190\t(- - -)\n-JY8QFUQ01DVBU0\t196\tFR3\ta\tg\t66\tS\tA\tRGYW\t196\t199\t(- + -)\n-JY8QFUQ01DVBU0\t196\tFR3\ta\tg\t66\tS\tA\tWRCY\t196\t199\t(- + -)\n-JY8QFUQ01DVBU0\t196\tCDR2\ta\tg\t66\tS\tA\tWA\t195\t196\t(- + -)\n-JY8QFUQ01DVBU0\t197\tFR3\tg\tc\t66\tS\tA\tRGYW\t196\t199\t(- + -)\n-JY8QFUQ01DVBU0\t197\tFR3\tg\tc\t66\tS\tA\tWRCY\t196\t199\t(- + -)\n-JY8QFUQ01DXDOM\t104\tCDR1\tg\tc\t35\tS\tT\tRGYW\t103\t106\t(+ - +)\n-JY8QFUQ01DXDOM\t106\tCDR1\ta\tg\t36\tS\tG\tRGYW\t103\t106\t(+ + -)\n-JY8QFUQ01DXDOM\t106\tCDR1\ta\tg\t36\tS\tG\tWRCY\t106\t109\t(+ + -)\n-JY8QFUQ01DXDOM\t106\tCDR1\ta\tg\t36\tS\tG\tWA\t105\t106\t(+ + -)\n-JY8QFUQ01DXDOM\t106\tCDR1\ta\tg\t36\tS\tG\tTW\t105\t106\t(+ + -)\n-JY8QFUQ01DXDOM\t108\tCDR1\tc\tt\t36\tS\tG\tWRCY\t106\t109\t(+ + -)\n-JY8QFUQ01DXDOM\t110\tCDR1\ta\tt\t37\tY\tF\tWA\t109\t110\t(- + -)\n-JY8QFUQ01DXDOM\t110\tCDR1\ta\tt\t37\tY\tF\tTW\t109\t110\t(- + -)\n-JY8QFUQ01DXDOM\t113\tCDR1\tg\tc\t38\tS\tT\tRGYW\t112\t115\t(+ - +)\n-JY8QFUQ01DXDOM\t115\tCDR1\ta\tg\t39\tM\tV\tRGYW\t112\t115\t(+ - -)\n-JY8QFUQ01DXDOM\t119\tFR2\ta\tt\t40\tN\tI\tWRCY\t118\t121\t(- - -)\n-JY8QFUQ01DXDOM\t119\tFR2\ta\tt\t40\tN\tI\tWA\t118\t119\t(- - -)\n-JY8QFUQ01DXDOM\t168\tCDR2\tt\tc\t56\tI\tV\tWA\t168\t169\t(+ - +)\n-JY8QFUQ01DXDOM\t168\tCDR2\tt\tc\t56\tI\tV\tTW\t167\t168\t(+ - +)\n-JY8QFUQ01DXDOM\t170\tCDR2\tg\tc\t57\tS\tT\tRGYW\t169\t172\t(+ - +)\n-JY8QFUQ01DXDOM\t187\tCDR2\ta\tg\t63\tS\tG\tRGYW\t184\t187\t(+ + -)\n-JY8QFUQ01DXDOM\t187\tCDR2\ta\tg\t63\tS\tG\tWA\t186\t187\t(+ + -)\n-JY8QFUQ01DXDOM\t187\tCDR2\ta\tg\t63\tS\tG\tTW\t186\t187\t(+ + -)\n-JY8QFUQ01DXDOM\t190\tCDR2\tt\tc\t64\tY\tL\tWA\t190\t191\t(- - -)\n-JY8QFUQ01DXDOM\t190\tCDR2\tt\tc\t64\tY\tL\tTW\t189\t190\t(- - -)\n-JY8QFUQ01DXDOM\t191\tCDR2\ta\tt\t64\tY\tL\tWA\t190\t191\t(- - -)\n-JY8QFUQ01DXDOM\t194\tCDR2\tt\tc\t65\tI\tT\tWA\t194\t195\t(- - -)\n-JY8QFUQ01DXDOM\t194\tCDR2\tt\tc\t65\tI\tT\tTW\t194\t195\t(- - -)\n-JY8QFUQ01DXDOM\t195\tCDR2\ta\tg\t65\tI\tT\tWA\t194\t195\t(- - -)\n-JY8QFUQ01DXDOM\t195\tCDR2\ta\tg\t65\tI\tT\tTW\t194\t195\t(- - -)\n-JY8QFUQ01DXDOM\t214\tFR3\ta\tg\t72\tK\tE\tWA\t214\t215\t(+ - -)\n-JY8QFUQ01DXDOM\t255\tFR3\tc\tt\tNone\tNone\tNone\tWRCY\t253\t256\tNone\n-JY8QFUQ01DXDOM\t263\tFR3\ta\tt\t88\tY\tF\tWA\t262\t263\t(- + -)\n-JY8QFUQ01DXDOM\t263\tFR3\ta\tt\t88\tY\tF\tTW\t262\t263\t(- + -)\n-JY8QFUQ01DXDOM\t287\tFR3\tc\tt\t96\tA\tV\tWRCY\t285\t288\t(+ - +)\n-JY8QFUQ01DXDOM\t297\tFR3\tg\tt\tNone\tNone\tNone\tRGYW\t297\t300\tNone\n-JY8QFUQ01DXDOM\t299\tFR3\tc\tg\t100\tA\tG\tRGYW\t297\t300\t(- + -)\n-JY8QFUQ01DXDOM\t309\tFR3\tc\tt\tNone\tNone\tNone\tWRCY\t307\t310\tNone\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/data/intermediate_files/mutationdict.txt --- a/tests/data/intermediate_files/mutationdict.txt Wed Feb 02 10:57:36 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
| b |
| b'@@ -1,41750 +0,0 @@\n-JY8QFUQ01A0005_CDR1\tg\t92\ta\tS\t31\tN\t(- - -)\n-JY8QFUQ01A0005_CDR1\tt\t105\ta\tS\t35\tR\t(- - -)\n-JY8QFUQ01A0005_CDR1\tg\t107\ta\tS\t36\tN\t(- - -)\n-JY8QFUQ01A0005_CDR1\tc\t111\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A0005_CDR1\tc\t114\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A0005_FR2\tg\t147\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A0005_FR2\tc\t148\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A0005_FR2\tg\t162\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01A0005_FR2\tg\t164\ta\tS\t55\tN\t(- - -)\n-JY8QFUQ01A0005_CDR2\tg\t191\ta\tS\t64\tN\t(- - -)\n-JY8QFUQ01A0005_FR2-CDR2\tg\t147\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A0005_FR2-CDR2\tc\t148\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A0005_FR2-CDR2\tg\t162\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01A0005_FR2-CDR2\tg\t164\ta\tS\t55\tN\t(- - -)\n-JY8QFUQ01A0005_FR2-CDR2\tg\t191\ta\tS\t64\tN\t(- - -)\n-JY8QFUQ01A0005_FR3\tc\t204\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A0005_FR3\ta\t232\tg\tI\t78\tV\t(+ - +)\n-JY8QFUQ01A0005_FR3\tc\t245\tg\tT\t82\tR\t(- - -)\n-JY8QFUQ01A0005_FR3\tc\t249\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A0005_FR3\tc\t261\tg\tF\t87\tL\t(+ - -)\n-JY8QFUQ01A0005_FR3\tg\t275\tc\tS\t92\tT\t(+ - +)\n-JY8QFUQ01A0005_FR3\tg\t280\tc\tV\t94\tL\t(+ - +)\n-JY8QFUQ01A0005_FR3\tg\t303\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01A004N_CDR1\ta\t88\tg\tI\t30\tV\t(+ - +)\n-JY8QFUQ01A004N_CDR1\tc\t93\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A004N_CDR1\tt\t102\tg\tS\t34\tR\t(- - -)\n-JY8QFUQ01A004N_CDR1\ta\t106\tg\tS\t36\tA\t(- + -)\n-JY8QFUQ01A004N_CDR1\tg\t107\tc\tS\t36\tA\t(- + -)\n-JY8QFUQ01A004N_CDR1\tt\t108\tc\tS\t36\tA\t(- + -)\n-JY8QFUQ01A004N_FR2\tg\t164\tc\tS\t55\tT\t(+ - +)\n-JY8QFUQ01A004N_FR2\tt\t165\tc\tS\t55\tT\t(+ - +)\n-JY8QFUQ01A004N_CDR2\tg\t191\tc\tS\t64\tT\t(+ - +)\n-JY8QFUQ01A004N_CDR2\tc\t195\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01A004N_FR2-CDR2\tg\t164\tc\tS\t55\tT\t(+ - +)\n-JY8QFUQ01A004N_FR2-CDR2\tt\t165\tc\tS\t55\tT\t(+ - +)\n-JY8QFUQ01A004N_FR2-CDR2\tg\t191\tc\tS\t64\tT\t(+ - +)\n-JY8QFUQ01A004N_FR2-CDR2\tc\t195\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01A004N_FR3\ta\t200\tc\tY\t67\tS\t(+ - -)\n-JY8QFUQ01A004N_FR3\tc\t204\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A004N_FR3\tg\t221\tc\tS\t74\tT\t(+ - +)\n-JY8QFUQ01A004N_FR3\ta\t234\tg\tI\t78\tM\t(+ + -)\n-JY8QFUQ01A004N_FR3\tg\t238\tt\tV\t80\tL\t(+ - +)\n-JY8QFUQ01A004N_FR3\ta\t240\tg\tV\t80\tL\t(+ - +)\n-JY8QFUQ01A004N_FR3\tt\t259\ta\tF\t87\tI\t(+ - -)\n-JY8QFUQ01A004N_FR3\tg\t275\ta\tS\t92\tN\t(- - -)\n-JY8QFUQ01A004N_FR3\tc\t276\tt\tS\t92\tN\t(- - -)\n-JY8QFUQ01A004N_FR3\tg\t303\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_CDR1\tg\t83\ta\tG\t28\tD\t(- - -)\n-JY8QFUQ01A006G_CDR1\tc\t93\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_CDR1\tg\t104\tc\tS\t35\tT\t(+ - +)\n-JY8QFUQ01A006G_CDR1\ta\t106\tc\tS\t36\tH\t(+ - -)\n-JY8QFUQ01A006G_CDR1\tg\t107\ta\tS\t36\tH\t(+ - -)\n-JY8QFUQ01A006G_CDR1\tc\t114\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR2\tc\t129\tg\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR2\ta\t143\tg\tK\t48\tR\t(+ + +)\n-JY8QFUQ01A006G_FR2\tg\t147\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR2\ta\t157\tg\tI\t53\tV\t(+ - +)\n-JY8QFUQ01A006G_CDR2\tt\t169\tc\tY\t57\tH\t(+ - -)\n-JY8QFUQ01A006G_CDR2\tt\t171\tc\tY\t57\tH\t(+ - -)\n-JY8QFUQ01A006G_CDR2\tt\t174\tc\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_CDR2\tg\t176\tc\tS\t59\tT\t(+ - +)\n-JY8QFUQ01A006G_FR2-CDR2\tc\t129\tg\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR2-CDR2\ta\t143\tg\tK\t48\tR\t(+ + +)\n-JY8QFUQ01A006G_FR2-CDR2\tg\t147\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR2-CDR2\ta\t157\tg\tI\t53\tV\t(+ - +)\n-JY8QFUQ01A006G_FR2-CDR2\tt\t169\tc\tY\t57\tH\t(+ - -)\n-JY8QFUQ01A006G_FR2-CDR2\tt\t171\tc\tY\t57\tH\t(+ - -)\n-JY8QFUQ01A006G_FR2-CDR2\tt\t174\tc\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR2-CDR2\tg\t176\tc\tS\t59\tT\t(+ - +)\n-JY8QFUQ01A006G_FR3\tc\t205\tt\tP\t69\tW\t(- - -)\n-JY8QFUQ01A006G_FR3\tc\t206\tg\tP\t69\tW\t(- - -)\n-JY8QFUQ01A006G_FR3\ta\t220\tc\tS\t74\tH\t(+ - -)\n-JY8QFUQ01A006G_FR3\tg\t221\ta\tS\t74\tH\t(+ - -)\n-JY8QFUQ01A006G_FR3\ta\t229\tt\tT\t77\tS\t(+ - +)\n-JY8QFUQ01A006G_FR3\tc\t231\tt\tT\t77\tS\t(+ - +)\n-JY8QFUQ01A006G_FR3\tc\t237\tg\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR3\ta\t240\tg\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR3\tg\t246\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR3\tc\t249\tg\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR3\ta\t251\tg\tK\t84\tS\t(- - -)\n-JY8QFUQ01A006G_FR3\tg\t252\tt\tK\t84\tS\t(- - -)\n-JY8QFUQ01A006G_FR3\ta\t269\tg\tK\t90\tR\t(+ + +)\n-JY8QFUQ01A006G_FR3\tc\t271\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR3\tc\t276\tg\tS\t92\tR\t(- - -)\n-JY8QFUQ01A006G_FR3\ta\t291\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR3\tg\t303\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01A006G_FR3\tt\t'..b'e\n-JY8QFUQ01DV4HU_FR3\tc\t287\tt\tA\t96\tV\t(+ - +)\n-JY8QFUQ01DV4HU_FR3\tg\t303\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01DV4HU_FR3\tc\t309\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01DV4HU_FR3\tt\t312\tc\tNone\tNone\tNone\tNone\n-JY8QFUQ01DV8LF_CDR1\ta\t106\tc\tS\t36\tR\t(- - -)\n-JY8QFUQ01DV8LF_FR2\tg\t147\tc\tNone\tNone\tNone\tNone\n-JY8QFUQ01DV8LF_CDR2\tt\t171\ta\tN\t57\tK\t(+ - -)\n-JY8QFUQ01DV8LF_CDR2\tg\t188\tt\tS\t63\tI\t(- - -)\n-JY8QFUQ01DV8LF_FR2-CDR2\tg\t147\tc\tNone\tNone\tNone\tNone\n-JY8QFUQ01DV8LF_FR2-CDR2\tt\t171\ta\tN\t57\tK\t(+ - -)\n-JY8QFUQ01DV8LF_FR2-CDR2\tg\t188\tt\tS\t63\tI\t(- - -)\n-JY8QFUQ01DV8LF_FR3\tc\t259\tg\tL\t87\tV\t(+ - +)\n-JY8QFUQ01DV8LF_FR3\tt\t306\tc\tNone\tNone\tNone\tNone\n-JY8QFUQ01DVBU0_CDR1\tc\t86\tt\tT\t29\tI\t(- - -)\n-JY8QFUQ01DVBU0_FR2\tc\t159\tg\tNone\tNone\tNone\tNone\n-JY8QFUQ01DVBU0_CDR2\tt\t167\tg\tI\t56\tS\t(- - -)\n-JY8QFUQ01DVBU0_CDR2\tt\t174\tc\tNone\tNone\tNone\tNone\n-JY8QFUQ01DVBU0_CDR2\ta\t176\tg\tD\t59\tG\t(- - -)\n-JY8QFUQ01DVBU0_CDR2\tt\t177\tg\tD\t59\tG\t(- - -)\n-JY8QFUQ01DVBU0_CDR2\tg\t188\tc\tS\t63\tT\t(+ - +)\n-JY8QFUQ01DVBU0_CDR2\ta\t190\tg\tS\t64\tD\t(- - -)\n-JY8QFUQ01DVBU0_CDR2\tg\t191\ta\tS\t64\tD\t(- - -)\n-JY8QFUQ01DVBU0_FR2-CDR2\tc\t159\tg\tNone\tNone\tNone\tNone\n-JY8QFUQ01DVBU0_FR2-CDR2\tt\t167\tg\tI\t56\tS\t(- - -)\n-JY8QFUQ01DVBU0_FR2-CDR2\tt\t174\tc\tNone\tNone\tNone\tNone\n-JY8QFUQ01DVBU0_FR2-CDR2\ta\t176\tg\tD\t59\tG\t(- - -)\n-JY8QFUQ01DVBU0_FR2-CDR2\tt\t177\tg\tD\t59\tG\t(- - -)\n-JY8QFUQ01DVBU0_FR2-CDR2\tg\t188\tc\tS\t63\tT\t(+ - +)\n-JY8QFUQ01DVBU0_FR2-CDR2\ta\t190\tg\tS\t64\tD\t(- - -)\n-JY8QFUQ01DVBU0_FR2-CDR2\tg\t191\ta\tS\t64\tD\t(- - -)\n-JY8QFUQ01DVBU0_FR3\ta\t196\tg\tS\t66\tA\t(- + -)\n-JY8QFUQ01DVBU0_FR3\tg\t197\tc\tS\t66\tA\t(- + -)\n-JY8QFUQ01DVBU0_FR3\ta\t238\tc\tNone\tNone\tNone\tNone\n-JY8QFUQ01DVBU0_FR3\tc\t248\tg\tA\t83\tG\t(- + -)\n-JY8QFUQ01DVBU0_FR3\tc\t249\tg\tA\t83\tG\t(- + -)\n-JY8QFUQ01DVBU0_FR3\tg\t303\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01DXDOM_CDR1\tc\t86\tg\tT\t29\tS\t(+ - +)\n-JY8QFUQ01DXDOM_CDR1\tc\t87\tt\tT\t29\tS\t(+ - +)\n-JY8QFUQ01DXDOM_CDR1\tg\t104\tc\tS\t35\tT\t(+ - +)\n-JY8QFUQ01DXDOM_CDR1\ta\t106\tg\tS\t36\tG\t(+ + -)\n-JY8QFUQ01DXDOM_CDR1\tc\t108\tt\tS\t36\tG\t(+ + -)\n-JY8QFUQ01DXDOM_CDR1\ta\t110\tt\tY\t37\tF\t(- + -)\n-JY8QFUQ01DXDOM_CDR1\tg\t113\tc\tS\t38\tT\t(+ - +)\n-JY8QFUQ01DXDOM_FR2\ta\t115\tg\tM\t39\tV\t(+ - -)\n-JY8QFUQ01DXDOM_FR2\ta\t119\tt\tN\t40\tI\t(- - -)\n-JY8QFUQ01DXDOM_FR2\tg\t139\ta\tG\t47\tR\t(- - -)\n-JY8QFUQ01DXDOM_FR2\tg\t153\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01DXDOM_FR2\tg\t157\ta\tV\t53\tI\t(+ - +)\n-JY8QFUQ01DXDOM_CDR2\ta\t166\tg\tI\t56\tV\t(+ - +)\n-JY8QFUQ01DXDOM_CDR2\tt\t168\tc\tI\t56\tV\t(+ - +)\n-JY8QFUQ01DXDOM_CDR2\tg\t170\tc\tS\t57\tT\t(+ - +)\n-JY8QFUQ01DXDOM_CDR2\tg\t173\tc\tS\t58\tT\t(+ - +)\n-JY8QFUQ01DXDOM_CDR2\tg\t176\ta\tS\t59\tN\t(- - -)\n-JY8QFUQ01DXDOM_CDR2\ta\t187\tg\tS\t63\tG\t(+ + -)\n-JY8QFUQ01DXDOM_CDR2\tt\t190\tc\tY\t64\tL\t(- - -)\n-JY8QFUQ01DXDOM_CDR2\ta\t191\tt\tY\t64\tL\t(- - -)\n-JY8QFUQ01DXDOM_CDR2\tt\t194\tc\tI\t65\tT\t(- - -)\n-JY8QFUQ01DXDOM_CDR2\ta\t195\tg\tI\t65\tT\t(- - -)\n-JY8QFUQ01DXDOM_FR2-CDR2\ta\t115\tg\tM\t39\tV\t(+ - -)\n-JY8QFUQ01DXDOM_FR2-CDR2\ta\t119\tt\tN\t40\tI\t(- - -)\n-JY8QFUQ01DXDOM_FR2-CDR2\tg\t139\ta\tG\t47\tR\t(- - -)\n-JY8QFUQ01DXDOM_FR2-CDR2\tg\t153\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01DXDOM_FR2-CDR2\tg\t157\ta\tV\t53\tI\t(+ - +)\n-JY8QFUQ01DXDOM_FR2-CDR2\ta\t166\tg\tI\t56\tV\t(+ - +)\n-JY8QFUQ01DXDOM_FR2-CDR2\tt\t168\tc\tI\t56\tV\t(+ - +)\n-JY8QFUQ01DXDOM_FR2-CDR2\tg\t170\tc\tS\t57\tT\t(+ - +)\n-JY8QFUQ01DXDOM_FR2-CDR2\tg\t173\tc\tS\t58\tT\t(+ - +)\n-JY8QFUQ01DXDOM_FR2-CDR2\tg\t176\ta\tS\t59\tN\t(- - -)\n-JY8QFUQ01DXDOM_FR2-CDR2\ta\t187\tg\tS\t63\tG\t(+ + -)\n-JY8QFUQ01DXDOM_FR2-CDR2\tt\t190\tc\tY\t64\tL\t(- - -)\n-JY8QFUQ01DXDOM_FR2-CDR2\ta\t191\tt\tY\t64\tL\t(- - -)\n-JY8QFUQ01DXDOM_FR2-CDR2\tt\t194\tc\tI\t65\tT\t(- - -)\n-JY8QFUQ01DXDOM_FR2-CDR2\ta\t195\tg\tI\t65\tT\t(- - -)\n-JY8QFUQ01DXDOM_FR3\tg\t213\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01DXDOM_FR3\ta\t214\tg\tK\t72\tE\t(+ - -)\n-JY8QFUQ01DXDOM_FR3\tc\t230\ta\tT\t77\tN\t(- + -)\n-JY8QFUQ01DXDOM_FR3\ta\t240\tg\tNone\tNone\tNone\tNone\n-JY8QFUQ01DXDOM_FR3\tg\t252\tc\tK\t84\tN\t(+ - -)\n-JY8QFUQ01DXDOM_FR3\tc\t255\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01DXDOM_FR3\tc\t257\tt\tS\t86\tL\t(- - -)\n-JY8QFUQ01DXDOM_FR3\tc\t259\tg\tL\t87\tV\t(+ - +)\n-JY8QFUQ01DXDOM_FR3\ta\t263\tt\tY\t88\tF\t(- + -)\n-JY8QFUQ01DXDOM_FR3\tc\t287\tt\tA\t96\tV\t(+ - +)\n-JY8QFUQ01DXDOM_FR3\tg\t297\tt\tNone\tNone\tNone\tNone\n-JY8QFUQ01DXDOM_FR3\tc\t299\tg\tA\t100\tG\t(- + -)\n-JY8QFUQ01DXDOM_FR3\tg\t303\ta\tNone\tNone\tNone\tNone\n-JY8QFUQ01DXDOM_FR3\tc\t309\tt\tNone\tNone\tNone\tNone\n' |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f tests/test_shm_csr.py --- a/tests/test_shm_csr.py Wed Feb 02 10:57:36 2022 +0000 +++ b/tests/test_shm_csr.py Mon Dec 12 12:32:44 2022 +0000 |
| [ |
| @@ -69,7 +69,11 @@ filter_unique_count = '2' class_filter = '70_70' empty_region_filter = 'FR1' - fast = 'no' + # Skip baseline and changeo by default. These tools cannot be modified + # anyway and take most of the test time to execute. The environment + # variable can be set to "no" on the CI so the code path is tested + # at the time a PR is ready. + fast = os.environ.get("SHM_CSR_FAST", "yes") cmd = [ "bash", wrapper, |
| b |
| diff -r f387cc1580c6 -r cf8ad181628f wrapper.sh --- a/wrapper.sh Wed Feb 02 10:57:36 2022 +0000 +++ b/wrapper.sh Mon Dec 12 12:32:44 2022 +0000 |
| [ |
| b'@@ -24,7 +24,10 @@\n \n #exec 5> debug_output.txt\n #BASH_XTRACEFD="5"\n-#PS4=\'$(date +%s.%N) $LINENO: \'\n+## Busybox date does not support \'+%s.%N\'. So use the slower python instead.\n+## Using -S python does not do \'import site\' which shortens the command\n+## to 10 milliseconds.\n+#PS4=\'$(python -Sc "import time; print(time.time())") $LINENO: \'\n #set -x\n \n mkdir -p $outdir\n@@ -84,107 +87,13 @@\n \n Rscript $dir/merge_and_filter.r $PWD/summary.txt $PWD/sequences.txt $PWD/mutationanalysis.txt $PWD/mutationstats.txt $PWD/hotspots.txt "$PWD/gapped_aa.txt" $outdir/identified_genes.txt $outdir/merged.txt $outdir/before_unique_filter.txt $outdir/unmatched.txt $method $functionality $unique ${filter_unique} ${filter_unique_count} ${class_filter} ${empty_region_filter} 2>&1\n \n-if [[ "${naive_output}" == "yes" ]] || [[ "$fast" == "no" ]] ; then\n-\n-\techo "---------------- creating new IMGT zips ----------------"\n-\techo "---------------- creating new IMGT zips ----------------<br />" >> $log\n-\n-\tmkdir $outdir/new_IMGT\n-\n-\tcp $PWD/summary.txt "$outdir/new_IMGT/1_Summary.txt"\n-\tcp $PWD/gapped_nt.txt "$outdir/new_IMGT/2_IMGT-gapped-nt-sequences.txt"\n-\tcp $PWD/sequences.txt "$outdir/new_IMGT/3_Nt-sequences.txt"\n-\tcp $PWD/gapped_aa.txt "$outdir/new_IMGT/4_IMGT-gapped-AA-sequences.txt"\n-\tcp $PWD/aa.txt "$outdir/new_IMGT/5_AA-sequences.txt"\n-\tcp $PWD/junction.txt "$outdir/new_IMGT/6_Junction.txt"\n-\tcp $PWD/mutationanalysis.txt "$outdir/new_IMGT/7_V-REGION-mutation-and-AA-change-table.txt"\n-\tcp $PWD/mutationstats.txt "$outdir/new_IMGT/8_V-REGION-nt-mutation-statistics.txt"\n-\tcp $PWD/aa_change_stats.txt "$outdir/new_IMGT/9_V-REGION-AA-change-statistics.txt"\n-\tcp $PWD/hotspots.txt "$outdir/new_IMGT/10_V-REGION-mutation-hotspots.txt"\n-\n-\tmkdir $outdir/new_IMGT_IGA\n-\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGA\n-\n-\tmkdir $outdir/new_IMGT_IGA1\n-\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGA1\n-\n-\tmkdir $outdir/new_IMGT_IGA2\n-\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGA2\n-\n-\tmkdir $outdir/new_IMGT_IGG\n-\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGG\n-\n-\tmkdir $outdir/new_IMGT_IGG1\n-\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGG1\n-\n-\tmkdir $outdir/new_IMGT_IGG2\n-\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGG2\n-\n-\tmkdir $outdir/new_IMGT_IGG3\n-\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGG3\n-\n-\tmkdir $outdir/new_IMGT_IGG4\n-\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGG4\n-\n-\tmkdir $outdir/new_IMGT_IGM\n-\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGM\n-\n-\tmkdir $outdir/new_IMGT_IGE\n-\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGE\n-\n-\tRscript $dir/new_imgt.r $outdir/new_IMGT/ $outdir/merged.txt "-" 2>&1\n+echo "---------------- creating new IMGT zips ----------------"\n+echo "---------------- creating new IMGT zips ----------------<br />" >> $log\n \n-\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGA/ $outdir/merged.txt "IGA" 2>&1\n-\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGA1/ $outdir/merged.txt "IGA1" 2>&1\n-\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGA2/ $outdir/merged.txt "IGA2" 2>&1\n-\n-\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGG/ $outdir/merged.txt "IGG" 2>&1\n-\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGG1/ $outdir/merged.txt "IGG1" 2>&1\n-\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGG2/ $outdir/merged.txt "IGG2" 2>&1\n-\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGG3/ $outdir/merged.txt "IGG3" 2>&1\n-\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGG4/ $outdir/merged.txt "IGG4" 2>&1\n-\n-\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGM/ $outdir/merged.txt "IGM" 2>&1\n-\n-\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGE/ $outdir/merged.txt "IGE" 2>&1\n-\n-\n-\ttmp="$PWD"\n-\tcd $outdir/new_IMGT/ #tar weirdness...\n-\ttar -cJf ../new_IMGT.txz *\n-\n-\tcd $outdir/new_IMGT_IGA/\n-\ttar -cJf ../new_IMGT_IGA.txz *\n-\n-\tcd $outdir/new_IMGT_IGA1/\n-\ttar -cJf ../new_IMGT_IGA1.txz *\n+python $dir/split_imgt_file.py --outdir $outdir $input $outdir/merged.txt \\\n+ --prefix new_IMGT \\\n+ - IGA IGA1 IGA2 IGG IGG1 IGG2 IGG3 IGG4 IGM IGE\n \n-\tcd $outdir/new_IMGT_IGA2/\n-\ttar -cJf ../new_IMGT_IGA2.txz *\n-\n-\tcd $outdir/new_IMGT_IGG/\n-\ttar -cJf ../new_'..b'tdir/change_o/change-o-db-defined_clones-IGM.txt $outdir/change_o/change-o-defined_clones-summary-IGM.txt\n \t\tRscript $dir/change_o/select_first_in_clone.r $outdir/change_o/change-o-db-defined_clones-IGM.txt $outdir/change_o/change-o-db-defined_first_clones-IGM.txt 2>&1\n \t\t\n-\t\tmkdir $outdir/new_IMGT_IGM_changeo\n-\t\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGM_changeo\n-\t\t\n-\t\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGM_changeo $outdir/change_o/change-o-db-defined_first_clones-IGM.txt "-" 2>&1\n-\t\t\n-\t\tcd $outdir/new_IMGT_IGM_changeo\n-\t\ttar -cJf ../new_IMGT_IGM_first_seq_of_clone.txz *\n-\t\t\n-\t\trm -rf $outdir/new_IMGT_IGM_changeo\n-\t\t\n-\t\tcd $outdir/change_o\n+ python $dir/split_imgt_file.py --outdir $outdir --prefix new_IMGT_IGM_first_seq_of_clone \\\n+ $outdir/new_IMGT.txz $outdir/change_o/change-o-db-defined_first_clones-IGM.txt \\\n+ "-"\n+\n \telse\n \t\techo "No IGM sequences" > "$outdir/change_o/change-o-db-defined_clones-IGM.txt"\n \t\techo "No IGM sequences" > "$outdir/change_o/change-o-defined_clones-summary-IGM.txt"\n \tfi\n \n-\tif [[ $(wc -l < $outdir/new_IMGT_IGE/1_Summary.txt) -gt "1" ]]; then\n+\tif [[ "$(count_imgt_lines $outdir/new_IMGT_IGE.txz)" -gt "1" ]]; then\n \t\tbash $dir/change_o/makedb.sh $outdir/new_IMGT_IGE.txz false false false $outdir/change_o/change-o-db-IGE.txt\n \t\tbash $dir/change_o/define_clones.sh bygroup $outdir/change_o/change-o-db-IGE.txt gene first ham none min complete 3.0 $outdir/change_o/change-o-db-defined_clones-IGE.txt $outdir/change_o/change-o-defined_clones-summary-IGE.txt\n \t\tRscript $dir/change_o/select_first_in_clone.r $outdir/change_o/change-o-db-defined_clones-IGE.txt $outdir/change_o/change-o-db-defined_first_clones-IGE.txt 2>&1\n \t\t\n-\t\tmkdir $outdir/new_IMGT_IGE_changeo\n-\t\tcp $outdir/new_IMGT/* $outdir/new_IMGT_IGE_changeo\n-\t\t\n-\t\tRscript $dir/new_imgt.r $outdir/new_IMGT_IGE_changeo $outdir/change_o/change-o-db-defined_first_clones-IGE.txt "-" 2>&1\n-\t\t\n-\t\tcd $outdir/new_IMGT_IGE_changeo\n-\t\ttar -cJf ../new_IMGT_IGE_first_seq_of_clone.txz *\n-\t\t\n-\t\trm -rf $outdir/new_IMGT_IGE_changeo\n-\t\t\n-\t\tcd $outdir/change_o\n+ python $dir/split_imgt_file.py --outdir $outdir --prefix new_IMGT_IGE_first_seq_of_clone \\\n+ $outdir/new_IMGT.txz $outdir/change_o/change-o-db-defined_first_clones-IGE.txt \\\n+ "-"\n+\n \telse\n \t\techo "No IGE sequences" > "$outdir/change_o/change-o-db-defined_clones-IGE.txt"\n \t\techo "No IGE sequences" > "$outdir/change_o/change-o-defined_clones-summary-IGE.txt"\n \tfi\n \n \tcd "$tmp"\n-\t\n-\trm -rf $outdir/new_IMGT\n-\trm -rf $outdir/new_IMGT_IGA/\n-\trm -rf $outdir/new_IMGT_IGA1/\n-\trm -rf $outdir/new_IMGT_IGA2/\n-\trm -rf $outdir/new_IMGT_IGG/\n-\trm -rf $outdir/new_IMGT_IGG1/\n-\trm -rf $outdir/new_IMGT_IGG2/\n-\trm -rf $outdir/new_IMGT_IGG3/\n-\trm -rf $outdir/new_IMGT_IGG4/\n-\trm -rf $outdir/new_IMGT_IGM/\n-\trm -rf $outdir/new_IMGT_IGE/\n \n \techo "<div class=\'tabbertab\' title=\'Clonal Relation\' style=\'width: 7000px;\'>" >> $output #clonality tab\n \n@@ -860,7 +744,8 @@\n echo "<tr><td>An IMGT archive with just the matched and filtered IGG4 sequences</td><td><a href=\'new_IMGT_IGG4.txz\' download=\'new_IMGT_IGG4.txz\' >Download</a></td></tr>" >> $output\n echo "<tr><td>An IMGT archive with just the matched and filtered IGM sequences</td><td><a href=\'new_IMGT_IGM.txz\' download=\'new_IMGT_IGM.txz\' >Download</a></td></tr>" >> $output\n echo "<tr><td>An IMGT archive with just the matched and filtered IGE sequences</td><td><a href=\'new_IMGT_IGE.txz\' download=\'new_IMGT_IGE.txz\' >Download</a></td></tr>" >> $output\n-\n+echo "<tr><td>An IMGT archive with just the matched and filtered naive IGM sequences (mutations below 2%)</td><td><a href=\'new_IMGT_IGM_NAIVE.txz\' download=\'new_IMGT_IGM_NAIVE.txz\' >Download</a></td></tr>" >> $output\n+echo "<tr><td>An IMGT archive with just the matched and filtered naive memory IGM sequences (mutations 2% or higher)</td><td><a href=\'new_IMGT_IGM_NAIVE_MEMORY.txz\' download=\'new_IMGT_IGM_NAIVE_MEMORY.txz\' >Download</a></td></tr>" >> $output\n echo "</table>" >> $output\n \n echo "<br />" >> $output\n' |