Repository 'gsc_mannwhitney_de'
hg clone https://toolshed.g2.bx.psu.edu/repos/artbio/gsc_mannwhitney_de

Changeset 0:c67dba545a37 (2019-06-24)
Next changeset 1:aef09ac6d0a5 (2019-06-24)
Commit message:
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_mannwhitney_de commit 09dcd74dbc01f448518cf3db3e646afb0675a6fe
added:
MannWhitney_DE.R
mannwhitney_de.xml
test-data/filterCells_100.tsv
test-data/filtered-0.05.tab
test-data/geneMetadata_log.tsv
test-data/geneMetadata_nolog.tsv
test-data/signature_2columns.tsv
b
diff -r 000000000000 -r c67dba545a37 MannWhitney_DE.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/MannWhitney_DE.R Mon Jun 24 13:39:39 2019 -0400
[
@@ -0,0 +1,149 @@
+####################
+#   Differential   #
+#     analysis     #
+####################
+
+# Perform a differential analysis between 2
+# groups of cells.
+
+# Example of command
+# Rscript MannWhitney_DE.R --input <input.tsv> --sep <tab> --colnames <TRUE> --metadata <signature.tsv> --column_name <rate> --fdr <0.01> --output <diff_analysis.tsv>
+
+# load packages that are provided in the conda env
+options( show.error.messages=F,
+       error = function () { cat( geterrmessage(), file=stderr() ); q( "no", 1, F ) } )
+loc <- Sys.setlocale("LC_MESSAGES", "en_US.UTF-8")
+warnings()
+library(optparse)
+
+#Arguments
+option_list = list(
+  make_option(
+    "--input",
+    default = NA,
+    type = 'character',
+    help = "Input file that contains log2(CPM +1) values"
+  ),
+  make_option(
+    "--sep",
+    default = '\t',
+    type = 'character',
+    help = "File separator [default : '%default' ]"
+  ),
+  make_option(
+    "--colnames",
+    default = TRUE,
+    type = 'logical',
+    help = "Consider first line as header ? [default : '%default' ]"
+  ),  
+  make_option(
+    "--comparison_factor_file",
+    default = NA,
+    type = 'character',
+    help = " A two column table : cell identifiers and a comparison factor that split cells in two categories (high/low, HOM/HET,...)"
+  ),
+  make_option(
+    "--factor1",
+    type = 'character',
+    help = "level associated to the control condition in the factor file"
+  ), 
+  make_option(
+    "--factor2",
+    type = 'character',
+    help = "level associated to the test condition in the factor file"
+  ),
+  make_option(
+    "--fdr",
+    default = 0.01,
+    type = 'numeric',
+    help = "FDR threshold [default : '%default' ]"
+  ),
+  make_option(
+    "--log",
+    default=FALSE,
+    action="store_true",
+    type = 'logical',
+    help = "Expression data are log-transformed [default : '%default' ]"
+  ),
+  make_option(
+    "--output",
+    default = "results.tsv",
+    type = 'character',
+    help = "Output name [default : '%default' ]"
+  )
+)
+
+opt = parse_args(OptionParser(option_list = option_list),
+                 args = commandArgs(trailingOnly = TRUE))
+
+if (opt$sep == "tab") {opt$sep = "\t"}
+if (opt$sep == "comma") {opt$sep = ","}
+
+#Open files
+data.counts <- read.table(
+  opt$input,
+  h = opt$colnames,
+  row.names = 1,
+  sep = opt$sep,
+  check.names = F
+)
+
+metadata <- read.table(
+  opt$comparison_factor_file,
+  header = TRUE,
+  stringsAsFactors = F,
+  sep = "\t",
+  check.names = FALSE,
+  row.names = 1
+)
+
+metadata <- subset(metadata, rownames(metadata) %in% colnames(data.counts))
+
+# Create two logical named vectors for each factor level of cell signature
+factor1_cells <- setNames(metadata[,1] == opt$factor1, rownames(metadata))
+factor2_cells <- setNames(metadata[,1] == opt$factor2, rownames(metadata))
+
+## Mann-Whitney test (Two-sample Wilcoxon test)
+MW_test <- data.frame(t(apply(data.counts, 1, function(x) {
+  do.call("cbind", wilcox.test(x[names(factor1_cells)[factor1_cells]], x[names(factor2_cells)[factor2_cells]]))[, 1:2]
+})), stringsAsFactors = F)
+
+# Benjamini-Hochberg correction and significativity
+MW_test$p.adjust <- p.adjust(as.numeric(MW_test$p.value), method = "BH" , n = nrow(MW_test))
+# MW_test$Critical.value <- (rank(MW_test$p.value) / nrow(MW_test)) * opt$fdr
+MW_test$Significant <- MW_test$p.adjust < opt$fdr
+
+## Descriptive Statistics Function
+descriptive_stats <- function(InputData) {
+  SummaryData = data.frame(
+    mean = rowMeans(InputData),
+    SD = apply(InputData, 1, sd),
+    Variance = apply(InputData, 1, var),
+    Percentage_Detection = apply(InputData, 1, function(x, y = InputData) {
+      (sum(x != 0) / ncol(y)) * 100
+    }),
+    mean_condition2 = rowMeans(InputData[,factor2_cells]),
+    mean_condition1 = rowMeans(InputData[, factor1_cells])
+  )
+  if(opt$log) {
+  SummaryData$log2FC <- SummaryData$mean_condition2 - SummaryData$mean_condition1
+  } else {
+  SummaryData$log2FC <- log2(SummaryData$mean_condition2 / SummaryData$mean_condition1)
+  }
+  return(SummaryData)
+}
+
+gene_stats <- descriptive_stats(data.counts)
+
+results <- merge(gene_stats, MW_test, by = "row.names")
+colnames(results)[1] <- "genes"
+
+# Save files
+write.table(
+  results,
+  opt$output,
+  sep = "\t",
+  quote = F,
+  col.names = T,
+  row.names = F
+)
b
diff -r 000000000000 -r c67dba545a37 mannwhitney_de.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mannwhitney_de.xml Mon Jun 24 13:39:39 2019 -0400
[
@@ -0,0 +1,127 @@
+<tool id="mannwhitney_de" name="Perform a differential analysis" version="0.9.0">
+    <description>using a Mann-Whitney test</description>
+    <requirements>
+        <requirement type="package" version="1.3.2=r3.3.2_0">r-optparse</requirement>
+    </requirements>
+    <stdio>
+        <exit_code range="1:" level="fatal" description="Tool exception" />
+    </stdio>
+    <command detect_errors="exit_code"><![CDATA[ 
+        Rscript $__tool_directory__/MannWhitney_DE.R 
+            --input '$input' 
+            --sep 
+            #if $sep == 'tab':
+              'tab'
+            #elif $sep == 'comma':
+              'comma'
+            #end if
+            --colnames '$colnames'
+            --factor1 '$factor1'
+            --factor2 '$factor2'
+            --comparison_factor_file '$comparison_factor_file'
+            --fdr '$fdr'
+            $log
+            --output '$output'
+]]></command>
+    <inputs>
+        <param name="input" type="data" format="txt,tabular" label="Expression data" help="a csv or tsv table file" />
+        <param name="sep" type="select" label="Indicate column separator">
+            <option value="tab" selected="true">Tabs</option>
+            <option value="comma">Comma</option>
+        </param>
+        <param name="colnames" type="select" label="Firt row contains column names">
+            <option value="TRUE" selected="true">Yes</option>
+            <option value="FALSE">No</option>
+        </param>
+        <param name="comparison_factor_file" type="data" format="tabular" label="Comparison factor table"
+               help="A tsv table file with two columns : cell identifiers and a column that split cells into two categories." />
+        <param name="factor1" type="text" label="Condition-1. The first level (value) that the comparison factor can take." help="typical values could be 'LOW', 'wt', 't1', etc."/>
+        <param name="factor2" type="text" label="Condition-2. The second level (value) that the comparison factor can take." help="typical values could be 'HIGH', 'mutant', 't2', etc."/>
+        <param name="fdr" type="float" value="0.01" label="FDR threshold"
+               help="Reject H0 of no differential expression if adjusted p-values (Benjamini-Hochberg correction) is higher than the FDR cut-off."/>
+        <param name="log" type="boolean" checked="false" label="Expression data are log-transformed" truevalue="--log" falsevalue=""/>
+
+    </inputs>
+    <outputs>
+        <data name="output" format="tabular" label="Results of Mann-Whitney differential analysis from ${on_string}" />
+    </outputs>
+    <tests>
+        <test>
+            <param name="input" value="filtered-0.05.tab" ftype="txt"/>
+            <param name="sep" value="tab" />
+            <param name="colnames" value="TRUE"/>
+            <param name="comparison_factor_file" value="signature_2columns.tsv" ftype="tabular"/>
+            <param name="factor1" value="LOW"/>
+            <param name="factor2" value="HIGH"/>
+            <param name="fdr" value="0.01"/>
+            <param name="log" value="true"/>
+            <output name="output" file="geneMetadata_log.tsv" ftype="tabular"/>
+        </test>
+        <test>
+            <param name="input" value="filterCells_100.tsv" ftype="txt"/>
+            <param name="sep" value="tab" />
+            <param name="colnames" value="TRUE"/>
+            <param name="comparison_factor_file" value="signature_2columns.tsv" ftype="tabular"/>
+            <param name="factor1" value="LOW"/>
+            <param name="factor2" value="HIGH"/>
+            <param name="fdr" value="0.01"/>
+            <param name="log" value="false"/>
+            <output name="output" file="geneMetadata_nolog.tsv" ftype="tabular"/>
+        </test>
+    </tests>
+    <help>
+
+**What it does**
+
+The tools takes a table of gene expression values (e.E. log2(CPM+1), etc...) from single cell RNAseq sequencing libraries (columns)
+
+and a metadata file that contains at least two columns :
+    * Cell identifiers
+    * A Column that differentiates cell in two groups (the two levels of a comparison factor). It must be a column with only values (the factor levels).
+
+For each gene (rows in expression data file), this script perform a 2-sided Mann-Whitney test between 
+the two groups of cells (high/low, mutant/wild type) and then adjust the returned p-values by using the
+Benjamini-Hochberg (BH) correction. A False Discovery Rate (FDR) threshold is used to determine if gene expression
+can be considered as significantly deviant for the H0 hypothesis of no-differential-expression (p-adjust below FDR cut-off) or not (p-adjust above the FDR cut-off). 
+
+.. class:: warningmark
+
+**Comparison plan**
+
+Note that log2Fold-Changes computed by the tool are based on the comparison of condition-2 (level-2) versus condition-1 (level-1) i.e.
+the tools returns the log2FC in condition-2 **relative** to condition-1.
+
+**Output**
+
+The tools returns a result table. For each row (genes) :
+
+==================== ======================================================================================================
+              Column Description
+-------------------- ------------------------------------------------------------------------------------------------------
+                mean mean expression across all cells
+                  SD standard deviation of its expression across all cells
+            variance variance of expression across all cells
+Percentage_detection (number of cells where the gene is detected (expression value superior to 0) / number of cells) * 100
+        mean_factor2 mean expression across cells of the second group (of log transformed expression values)
+        mean_factor1 mean expression across cells of the first group (of log transformed expression values)
+         fold_change mean_factor1 - mean_factor2 (difference of log)
+           statistic W statistic of Mann-Whitney test
+             p.value p-value of Mann-Whitney test
+            p.adjust p-values adjusted from the BH correction
+         Significant TRUE/FALSE vector (if p-adjust inferior to FDR cut-off then the value is TRUE) 
+==================== ======================================================================================================
+
+    </help>
+    <citations>
+        <citation type="bibtex">
+        @Manual{,
+             title = {R: A Language and Environment for Statistical Computing},
+             author = {{R Core Team}},
+             organization = {R Foundation for Statistical Computing},
+             address = {Vienna, Austria},
+             year = {2014},
+             url = {http://www.R-project.org/},
+        }
+        </citation>
+    </citations>
+</tool>
b
diff -r 000000000000 -r c67dba545a37 test-data/filterCells_100.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/filterCells_100.tsv Mon Jun 24 13:39:39 2019 -0400
b
b'@@ -0,0 +1,23369 @@\n+1001000173.G8\t1001000173.B4\t1001000173.A2\t1001000173.E2\t1001000173.F6\t1001000173.B12\t1001000173.H1\t1001000173.E4\t1001000173.C2\t1001000173.F4\t1001000173.E10\t1001000173.E6\t1001000173.C4\t1001000173.B10\t1001000173.A7\t1001000173.B8\t1001000173.F9\t1001000173.G6\t1001000173.A9\t1001000173.D2\t1001000173.F2\t1001000173.H9\t1001000173.G1\t1001000173.B3\t1001000173.D7\t1001000173.A12\t1001000173.C1\t1001000173.H7\t1001000173.H5\t1001000173.G2\t1001000173.A3\t1001000173.D3\t1001000173.E1\t1001000173.G12\t1001000173.C10\t1001000173.C3\t1001000173.A5\t1001000173.G4\t1001000173.B11\t1001000173.G9\t1001000173.F1\t1001000173.D8\t1001000173.E12\t1001000173.F11\t1001000173.E5\t1001000173.G10\t1001000173.B9\t1001000173.C7\t1001000173.B2\t1001000173.H4\t1001000174.G5\t1001000174.H9\t1001000174.A10\t1001000174.G10\t1001000174.C8\t1001000174.F6\t1001000174.B4\t1001000174.H7\t1001000174.E10\t1001000174.D5\t1001000174.E5\t1001000174.B11\t1001000174.F10\t1001000174.A5\t1001000174.B8\t1001000174.F2\t1001000174.F9\t1001000174.F4\t1001000174.B6\t1001000174.E2\t1001000174.G2\t1001000174.D8\t1001000174.H6\t1001000174.C3\t1001000174.B7\t1001000174.A7\t1001000174.H10\t1001000174.F7\t1001000174.A2\t1001000174.E4\t1001000174.D12\t1001000174.H4\t1001000174.C5\t1001000174.E9\t1001000174.D1\t1001000174.G4\t1001000174.G9\t1001000174.D4\t1001000174.H11\t1001000174.A9\t1001000174.A4\t1001000174.C7\t1001000174.D11\t1001000174.F5\t1001000174.G6\t1001000174.D6\t1001000174.H3\t1001000174.F12\t1001000174.E6\t1001000174.G3\t1001000174.A8\n+1/2-SBSRNA4\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\t66\t0\t0\t0\t0\t51\t0\t0\t0\t23\t0\t0\t0\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\t0\t0\t0\t0\t0\t0\t0\t0\t0\n+A1BG\t0\t0\t0\t0\t0\t53\t0\t229\t3\t0\t63\t0\t0\t7\t0\t62\t0\t0\t64\t23\t0\t44\t0\t29\t120\t0\t127\t86\t0\t0\t26\t0\t45\t19\t0\t0\t0\t0\t0\t36\t131\t0\t0\t0\t0\t1\t16\t65\t0\t0\t18\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t7\t0\t59\t0\t18\t0\t0\t33\t0\t0\t4\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t4\t0\t0\t69\t61\t47\t2\t0\t47\t0\t1\t12\t0\t0\n+A1BG-AS1\t0\t0\t1\t0\t0\t24\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t4\t0\t0\t0\t0\t0\t0\t0\t17\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t44\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\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+A1CF\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\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+A2LD1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t36\t0\t0\t0\t0\t0\t0\t0\t64\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t15\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n+A2M\t0\t0\t0\t0\t0\t0\t0\t0\t0\t63\t0\t0\t10\t0\t0\t0\t0\t0\t0\t0\t266\t0\t0\t0\t174\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t86\t0\t0\t0\t0\t0\t0\t0\t1494\t0\t0\t0\t1015\t0\t0\t0\t0\t0\t0\t4\t5\t0\t205\t0\t0\t0\t0\t30\t0\t0\t0\t54\t0\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t484\t643\t0\t0\t883\t0\t0\t0\t0\t0\t0\t0\t24\t0\t0\n+A2ML1\t0\t0\t34\t0\t0\t0\t0\t0\t205\t0\t0\t0\t0\t0\t5\t3\t0\t0\t0\t0\t0\t0\t0\t0\t0\t3\t0\t214\t236\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t103\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+A2MP1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t85\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\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+A4GALT\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\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+A4GNT\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t38\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\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+AA06\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\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+AAA1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0'..b'\t0\t0\t0\t0\t0\t0\t0\t0\t0\t67\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\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+ZSWIM4\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t96\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t3\t0\t0\t0\t0\t19\t0\t57\t0\t0\t0\t0\t0\t0\t0\t6\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t53\t1\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t21\t0\t0\t0\t0\t0\t0\t27\t0\t24\t0\t0\t0\t8\t0\t0\t0\t0\t0\t0\t0\t0\t0\n+ZSWIM5\t213\t0\t0\t0\t0\t0\t17\t0\t0\t0\t0\t0\t0\t0\t0\t0\t9\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t217\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n+ZSWIM6\t0\t0\t27\t0\t0\t0\t0\t0\t0\t0\t0\t0\t37\t1\t0\t0\t61\t0\t0\t55\t0\t5\t0\t0\t0\t0\t1\t0\t0\t4\t0\t0\t28\t7\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t12\t0\t0\t0\t0\t0\t6\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t69\t0\t0\t0\t0\t5\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t66\t0\t0\t0\t0\t0\t1\t0\t0\n+ZSWIM7\t161\t0\t106\t0\t0\t0\t0\t0\t0\t26\t105\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t44\t0\t0\t0\t0\t0\t5\t0\t0\t24\t60\t0\t0\t0\t86\t37\t0\t0\t19\t0\t0\t0\t0\t31\t0\t267\t0\t0\t0\t0\t0\t56\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t76\t0\t96\t0\t0\t33\t0\t0\t0\t0\t30\t0\t0\t0\t0\t0\t0\t103\t0\t0\t0\t18\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t120\n+ZUFSP\t0\t10\t0\t0\t0\t39\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t23\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\t0\t0\t0\t0\t0\t0\t7\t2\t0\t0\t0\t0\t0\t43\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t46\n+ZW10\t0\t0\t0\t0\t233\t0\t3\t0\t0\t42\t0\t0\t0\t0\t165\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t52\t0\t0\t0\t0\t0\t77\t0\t0\t0\t0\t0\t0\t0\t0\t0\t4\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t1\t0\t0\t100\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t94\t0\t35\t0\t40\t0\t0\t0\t144\t0\t0\t0\n+ZWILCH\t0\t0\t0\t0\t0\t0\t0\t0\t122\t0\t0\t18\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t2\t12\t27\t0\t0\t0\t2\t0\t0\t0\t0\t0\t0\t97\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t13\t0\t0\t0\t0\t0\t0\t24\t0\t273\t0\t0\t0\t0\t0\t0\t0\t0\t198\t0\t0\t98\t0\t251\t0\t0\t0\t0\t65\t0\t0\t0\t0\t154\t0\t0\t0\t0\t0\t0\t0\t0\t0\t133\n+ZWINT\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t66\t0\t0\t0\t0\t0\t0\t0\t0\t31\t35\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t326\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\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+ZXDA\t30\t0\t0\t0\t0\t0\t2\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t19\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t18\t0\t0\t5\t65\t0\t10\t0\t0\t0\t88\t0\t0\t0\t308\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t3\t0\t0\t0\t0\t0\t0\t30\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n+ZXDB\t0\t40\t41\t0\t0\t0\t0\t0\t94\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t49\t11\t92\t0\t0\t0\t0\t0\t65\t0\t0\t0\t1\t0\t0\t0\t0\t0\t0\t10\t0\t72\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\t205\t0\t0\t0\t0\t335\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t28\t0\t0\t0\t0\t96\n+ZXDC\t0\t33\t61\t439\t0\t74\t2\t0\t0\t96\t0\t432\t54\t0\t0\t72\t99\t0\t25\t0\t8\t60\t0\t55\t5\t25\t131\t288\t0\t54\t19\t184\t241\t51\t0\t73\t76\t0\t0\t0\t0\t23\t0\t100\t4\t198\t91\t0\t0\t0\t14\t0\t0\t374\t76\t9\t1\t0\t0\t0\t0\t0\t0\t1\t1\t38\t86\t24\t5\t380\t0\t114\t0\t0\t0\t0\t0\t0\t37\t0\t0\t71\t0\t8\t65\t0\t0\t0\t0\t122\t0\t0\t33\t0\t0\t0\t3\t0\t0\t0\n+ZYG11A\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\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\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t7\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n+ZYG11B\t0\t0\t0\t0\t0\t56\t0\t0\t194\t0\t102\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t86\t0\t0\t0\t155\t50\t57\t123\t0\t14\t10\t0\t0\t0\t0\t1\t25\t0\t77\t0\t0\t0\t0\t38\t0\t0\t0\t0\t0\t0\t0\t0\t2\t0\t11\t1\t0\t0\t0\t0\t0\t1\t0\t224\t0\t0\t0\t0\t0\t67\t0\t0\t0\t221\t0\t0\t0\t0\t137\t50\t0\t0\t0\t12\t0\t0\t0\t0\t61\t0\t0\t0\t0\t0\t0\t0\t0\n+ZYX\t0\t834\t0\t0\t1\t345\t0\t320\t117\t0\t0\t97\t23\t0\t0\t12\t55\t104\t102\t1\t477\t151\t448\t223\t376\t0\t561\t0\t0\t53\t49\t0\t655\t286\t0\t1\t0\t359\t747\t0\t0\t82\t22\t421\t242\t0\t101\t793\t11\t0\t103\t56\t190\t355\t386\t0\t22\t10\t0\t0\t290\t348\t0\t128\t8\t560\t1016\t94\t541\t138\t0\t258\t57\t0\t0\t0\t30\t68\t0\t331\t27\t0\t27\t0\t213\t130\t423\t858\t1523\t811\t225\t302\t0\t237\t32\t0\t258\t0\t0\t0\n+ZZEF1\t0\t0\t33\t1\t0\t7\t0\t8\t0\t0\t0\t254\t0\t64\t0\t0\t0\t0\t0\t0\t0\t0\t79\t0\t14\t251\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t21\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t58\t103\t0\t0\t57\t0\t0\t0\t0\t0\t0\t0\t0\t308\t5\t0\t0\t44\t0\t0\t0\t0\t0\t3\t0\t0\t0\t0\t4\t0\t38\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t182\t0\t0\t0\n+ZZZ3\t0\t0\t1\t0\t0\t0\t0\t0\t0\t82\t0\t1\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t4\t43\t0\t0\t0\t0\t224\t0\t122\t0\t34\t1\t0\t0\t29\t107\t0\t132\t0\t43\t66\t0\t0\t0\t78\t12\t8\t0\t0\t0\t0\t1\t15\t0\t6\t0\t0\t0\t0\t0\t0\t0\t0\t0\t150\t0\t0\t0\t0\t14\t3\t0\t12\t0\t0\t0\t0\t0\t0\t0\t0\t0\t50\t41\t0\t70\t0\t88\t0\t0\t0\t0\t18\t0\t0\t71\t0\t12\n+tAKR\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\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'
b
diff -r 000000000000 -r c67dba545a37 test-data/filtered-0.05.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/filtered-0.05.tab Mon Jun 24 13:39:39 2019 -0400
b
b'@@ -0,0 +1,43 @@\n+1001000235.G10\t1001000174.B1\t1001000177.C5\t1001000182.H4\t1001000175.A2\t1001000230.B11\t1001000237.E9\t1001000173.E10\t1001000241.E7\t1001000249.A3\t1001000179.A7\t1001000247.F11\t1001000240.D9\t1001000178.G5\t1001000249.E3\t1001000174.H6\t1001000181.F8\t1001000177.A10\t1001000235.D2\t1001000240.G10\t1001000248.E7\t1001000012.B6\t1001000179.H4\t1001000230.C1\t1001000175.H9\t1001000241.G11\t1001000174.G2\t1001000252.C6\t1001000186.D11\t1001000239.G7\t1001000258.G11\t1001000264.A1\t1001000174.A10\t1001000255.E9\t1001000242.B5\t1001000179.F3\t1001000185.F9\t1001000267.F8\t1001000183.G10\t1001000247.E7\t1001000031.A2\t1001000271.B1\t1001000187.G6\t1001000236.C6\t1001000238.C12\t1001000187.D6\t1001000235.E10\t1001000036.C1\t1001000253.H2\t1001000231.C2\t1001000178.C10\t1001000267.C1\t1001000180.E4\t1001000173.E5\t1001000179.F5\t1001000245.G11\t1001000185.D5\t1001000012.A7\t1001000010.B4\t1001000265.D11\t1001000032.F1\t1001000036.H9\t1001000245.B3\t1001000185.A8\t1001000178.C6\t1001000037.F10\t1001000245.H4\t1001000012.B10\t1001000245.F2\t1001000249.G2\t1001000187.E11\t1001000266.A4\t1001000266.G4\t1001000179.E3\t1001000178.C11\t1001000031.D12\t1001000037.D6\t1001000250.G2\t1001000018.F11\t1001000175.F9\t1001000254.G1\t1001000264.F12\t1001000183.B3\t1001000241.E6\t1001000183.E6\t1001000181.F10\t1001000176.B1\t1001000235.B7\t1001000231.D12\t1001000230.E7\t1001000186.H6\t1001000258.H5\t1001000237.H10\t1001000231.B7\t1001000270.H8\t1001000240.G1\t1001000177.D11\t1001000185.D3\t1001000238.B5\t1001000174.E10\n+BAI3\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t9.97662501806838\t0\t0\t0\t0\t12.8615775772142\t0\t0\t0\t15.9032354384535\t0\t0\t0\t0\t0\t12.2158463533178\t9.68026850722175\t15.3729581524844\t0\t0\t14.28403727033\t0\t0\t0\t0\t17.0775051033723\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t9.86467441602363\t0\t0\t0\t0\t0\t0\t14.2185940019444\t0\t0\t0\t0\t0\t9.4604919129408\t0\t0\n+FAM63B\t0\t14.7268225958904\t0\t0\t0\t0\t0\t14.2095873331695\t0\t0\t0\t7.05523661711308\t0\t0\t0\t0\t10.8662524562421\t0\t0\t0\t0\t0\t0\t12.5659445674216\t0\t0\t0\t0\t0\t0\t17.508917577493\t0\t15.2092038075611\t0\t0\t16.3552364080959\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t12.833405122753\t0\t0\t0\t0\t10.631490277574\t0\t0\t0\t0\t6.49910345713958\t0\t0\t12.6988507765885\t0\t17.5291982691478\t0\t0\t0\t0\t0\t0\t9.72047933810935\t0\t0\t8.00314342388438\t0\t0\t0\t0\t0\t10.5923353166174\t0\t13.1956852586776\t0\t0\t0\t0\t14.4254341461373\t0\t0\t0\t0\t13.2598797712496\t0\t0\t0\t0\t0\t0\t0\t6.6653716296684\t0\t0\n+TMEM132C\t0\t0\t0\t0\t0\t0\t0\t0\t0\t15.6304274760255\t0\t0\t0\t0\t11.3724171014623\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t13.7057920287568\t0\t0\t12.4990036192117\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t12.3619870470136\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t16.6895776681193\t0\t0\t0\t0\t0\t0\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+CNOT10\t0\t0\t0\t12.5284247529463\t0\t0\t13.6309484246823\t0\t16.7903618799946\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t15.8358043543831\t8.46449144379743\t0\t0\t0\t0\t15.1371239722208\t0\t0\t0\t0\t0\t0\t0\t0\t10.2006276343018\t0\t0\t0\t0\t0\t0\t0\t0\t0\t14.7982200816142\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t15.3047842000994\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t12.4261995844325\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\n+ZNF454\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t14.5579651511802\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t13.4963072779489\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t7.78016821618689\t0\t0\t0\t0\t0\t0\t16.5388867919625\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t13.9877698316934\t0\t0\t0\t0\t0\t0\t0\t0\t10.5434420502931\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t15.3814906941786\t0\t0\t0\t0\t0\t0\t0\t0\n+NCAPH2\t0\t0\t11.5345942380357\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t13.0829867301604\t0\t0\t0\t0\t0\t0\t0\t0\t0\t14.1653548255816\t0\t9.03949508564814\t0\t0\t0\t0\t0\t0\t0\t11.9202053526704\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t16.3990901824432\t0\t12.2683029418776\t0\t0\t0\t0\t13.7869478696612\t0\t0\t0\t0\t0\t0\t0\t0\t14.7279138778285\t15.2593911311788\t0\t0\t0\t0\t0\t17.609647687894\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t13.272662879133\t0\t0\t0\t8.96938688129654\t0\t0\t12.8650747588738\t12.3882534504039\t12.6353379357894\t0\t0\t0\t0\t0\t0\n+COQ7\t0\t0\t0\t13.5701193354039\t0\t0\t0\t14.2882952658838\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t12.98541820112\t0\t0\t0\t0\t0\t15.2847144623144\t0\t0\t0\t0\t12.2342685728768\t0\t0\t0\t12.6758526237534\t0\t0\t0\t0\t0\t0\t0\t0\t0\t11.4186970312285\t0\t0\t0\t0\t0\t0\t11.2771372004206\t18.2020669163213\t0\t0\t0\t0\t0\t0\t0\t0'..b'63\t0\t14.2382402378366\t13.1701738608004\t0\t0\t0\t0\t0\t11.50280852306\t0\t8.31771178485434\t0\t0\t0\t15.0261704271014\t0\t0\n+MYO7A\t0\t0\t10.2133954279646\t0\t0\t0\t0\t0\t15.8307316436531\t0\t0\t0\t0\t0\t0\t0\t0\t13.7121952434523\t15.9313225221491\t0\t0\t0\t0\t0\t0\t0\t0\t16.8049477311572\t0\t0\t0\t0\t0\t0\t0\t13.1609986763417\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t8.83636708837122\t0\t0\t0\t17.463590172088\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t9.1875306716268\t0\t0\t13.5241872063119\t18.0750354938906\t0\t0\t10.2810788111136\t17.2459745865081\t15.9279160530013\t12.748556401713\t0\t0\t0\t0\t0\n+DUSP14\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t17.682339347864\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t15.315185545429\t13.7402034707105\t0\t0\t0\t0\t0\t0\t0\t0\t0\t13.0068022983915\t16.2881643662067\t0\t0\t9.93304513317431\t0\t0\t0\t0\t0\t0\t16.1889386483903\t0\t0\t0\t0\t0\t0\t0\t0\t14.2903113142977\t0\t0\t0\t0\t0\t0\t0\t0\t0\t8.92960758696251\t0\t0\t0\t0\t0\t9.58251231821503\t0\t0\t0\t0\t0\t0\t0\n+LSAMP\t0\t0\t0\t14.6759892692826\t0\t0\t0\t12.0533461710639\t0\t17.443105373872\t0\t0\t0\t0\t18.0085029188716\t14.9703906666539\t0\t0\t0\t0\t15.1097945143932\t16.4778545804206\t0\t10.3189090138321\t0\t0\t16.8967216358908\t10.0381235983496\t0\t0\t16.5804778250305\t0\t14.0965479473356\t15.1259052017533\t0\t0\t14.4671092099988\t0\t15.3127843769133\t0\t7.58238867217773\t17.0198239388304\t0\t0\t0\t8.04450047834992\t0\t0\t0\t0\t0\t13.968540182416\t15.71562514092\t15.2670695731409\t0\t0\t16.0848565947262\t16.8549278933251\t0\t0\t15.0084279381472\t0\t0\t0\t0\t9.64220443531159\t12.2810179092402\t17.0312914793051\t12.2426279199397\t14.4957467346967\t17.5289904393214\t0\t0\t0\t0\t17.4281796010913\t7.97406042331398\t0\t0\t0\t17.2062943205767\t9.24744364660748\t0\t0\t9.1875306716268\t0\t0\t0\t0\t0\t17.2240719991621\t18.2874179157258\t0\t0\t0\t0\t0\t13.639885471395\t0\t0\n+IFRD2\t0\t14.1567591557826\t0\t0\t14.957471072991\t0\t11.7467317882544\t12.6777177703235\t0\t0\t0\t14.9692054355984\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t16.1887921858769\t0\t0\t0\t0\t0\t0\t0\t13.3325488559645\t0\t0\t15.4049392399236\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t11.9828942206529\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t15.220111460789\t0\t0\t0\t0\t0\t15.9054397866496\n+PSMC3\t0\t13.2005548043296\t14.8560845850134\t13.9643699083462\t0\t0\t15.3496874953813\t10.7907868950769\t0\t15.1318370018154\t0\t9.04707783388214\t0\t8.19629321739164\t8.79017289622793\t0\t0\t15.8347317159755\t0\t0\t0\t17.0608232736151\t0\t0\t0\t13.5804315841045\t0\t16.8246657947268\t0\t0\t0\t0\t14.0034440332771\t13.6639750287706\t9.87731250666145\t15.9198563257041\t14.9976043265065\t8.23765146833625\t14.0590768628974\t0\t0\t9.47110050463318\t0\t0\t0\t15.9579116555843\t14.8885374422562\t0\t0\t9.20185308314151\t17.7774040608022\t15.4550410979026\t0\t0\t0\t12.7812138562999\t13.3160965297846\t13.362283927802\t0\t16.4148573168466\t0\t16.3937707725726\t0\t0\t16.275541157128\t7.77254179434776\t16.4506691081895\t0\t17.0179871238337\t0\t0\t12.4571973732293\t0\t18.4730583687277\t0\t0\t0\t14.7148366132387\t0\t14.1156444482226\t0\t0\t0\t0\t0\t0\t14.2842702042516\t0\t0\t16.3258394378728\t16.0093455986421\t0\t0\t12.9572206787611\t0\t0\t0\t13.4841036871113\t0\t9.22834347315191\n+MUM1\t0\t0\t0\t12.6633325294353\t0\t0\t0\t14.5555669503357\t0\t13.3179500884142\t0\t0\t0\t0\t16.5748276652721\t0\t0\t0\t0\t0\t13.6318200750724\t0\t0\t12.710311816626\t0\t0\t18.214454853308\t15.1660730637326\t0\t0\t0\t0\t14.7518697094683\t7.00273235200855\t0\t0\t14.1650955067633\t0\t0\t0\t0\t0\t0\t13.2917085826559\t0\t0\t12.2258260817879\t0\t0\t0\t0\t0\t0\t11.886990211753\t11.7235170132018\t0\t0\t0\t0\t0\t0\t0\t18.3760540871383\t0\t0\t0\t12.6529208030743\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t11.244072167057\t0\t0\t0\t0\t14.4820702391067\t14.2768099711357\t0\t16.0313326070449\t16.1554843460377\t0\t0\t15.7728280344041\t10.6703592668752\t0\t0\t13.6708456975204\t0\t0\t0\t13.8991097089352\t0\t0\n+DIAPH2\t0\t0\t0\t0\t14.2205357083466\t16.7152640709125\t0\t0\t0\t0\t0\t0\t0\t16.654904535232\t0\t0\t0\t9.08248316789768\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t15.4373454971523\t0\t0\t0\t0\t0\t0\t0\t15.0941747307558\t0\t0\t0\t0\t0\t13.8406723774638\t0\t11.5418835561333\t0\t0\t0\t0\t15.3892593189199\t0\t0\t0\t0\t0\t11.3076469757304\t0\t0\t0\t13.3508485655876\t0\t0\t14.3317256961498\t0\t0\t0\t0\t0\t0\t0\t0\t10.8056703376854\t0\t0\t0\t0\t0\t10.9546977217628\t0\t0\t0\t0\t0\t0\t0\t0\t0\t0\t11.7742726683055\t0\t0\t0\t0\t13.9279854762358\t8.84459780169115\t0\t10.3514726687616\t0\t0\t11.548346056541\n'
b
diff -r 000000000000 -r c67dba545a37 test-data/geneMetadata_log.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/geneMetadata_log.tsv Mon Jun 24 13:39:39 2019 -0400
b
@@ -0,0 +1,43 @@
+genes mean SD Variance Percentage_Detection mean_condition2 mean_condition1 log2FC statistic p.value p.adjust Significant
+ACAD9 3.21757044598762 6.03354965169885 36.4037213995154 23 2.88532585223158 3.38872675186193 -0.50340089963035 6 0.411313791776259 1 FALSE
+AKT1 3.4403135511678 6.3127111628083 39.8503222250445 24 3.29486356822599 3.51524233025904 -0.220378762033048 4 NaN NA NA
+APIP 1.48573169701519 4.42462910898839 19.5773427521074 11 1.36959754030536 1.5455583838051 -0.175960843499742 5 0.723673609831763 1 FALSE
+BAI3 1.40915813751371 4.12336508696455 17.0021396403981 11 1.41059944781951 1.40841564432588 0.00218380349363256 5 0.723673609831763 1 FALSE
+BPHL 1.8725575575664 4.76402741808616 22.6959572402767 14 2.36794096575365 1.61736004425781 0.750580921495835 4 NaN NA NA
+C3orf62 2.21928690308303 5.23726221704512 27.4289155300884 16 1.99337186851464 2.33566737543644 -0.342295506921804 2 0.288844366346485 1 FALSE
+CCT4 5.58991399452656 7.04582138621306 49.6435990064173 40 5.97697998966529 5.39051636066721 0.586463628998078 5.5 0.63859207768502 1 FALSE
+CDKN2A 3.14847608508595 5.97643617835182 35.7177893939125 22 2.85206036997725 3.30117508983891 -0.449114719861661 5 0.8 1 FALSE
+CHFR 3.2793294035845 6.00856983357212 36.1029114449129 24 2.69677094764966 3.57943527482366 -0.882664327174004 4 NaN NA NA
+CHTOP 4.95213087424945 6.69826385145611 44.8667386237237 37 5.12715074739128 4.86196912141881 0.265181625972471 4.5 1 1 FALSE
+CLPB 1.20688850619883 3.94292278228986 15.5466400671004 9 1.64019045303295 0.983672351769125 0.656518101263825 3.5 1 1 FALSE
+CNOT10 1.35116986328472 4.15039762997951 17.2258004869395 10 0.769393328753782 1.65087292652794 -0.881479597774154 4 NaN NA NA
+COQ7 1.81109934358668 4.59246883791874 21.0907700272547 14 2.81750977159578 1.2926454867335 1.52486428486228 3 0.805732790848439 1 FALSE
+CYTH4 3.15940473609362 6.446078714101 41.5519307883859 20 2.52965691299695 3.48382028132524 -0.954163368328291 4 NaN NA NA
+DIAPH2 2.45173786931265 5.19109016758801 26.9474171280289 19 1.90478386205171 2.73350205487132 -0.828718192819611 2 0.288844366346485 1 FALSE
+DUSP14 1.34957110029642 4.17409370205428 17.4230582335292 10 1.22165867778853 1.41546537855805 -0.193806700769524 4 NaN NA NA
+FAM63B 2.44551578150534 5.13806432586195 26.3997050166952 20 1.25193652944719 3.0603899416565 -1.80845341220932 3.5 1 1 FALSE
+GAPDH 17.6727587681588 4.98787838098139 24.8789307434615 93 18.3959280065131 17.3002170393096 1.09571096720344 0 0.133333333333333 1 FALSE
+H3F3C 2.69750936927498 4.35063868472497 18.9280569650254 29 2.19689835219708 2.95539989322421 -0.758501541027127 6 0.411313791776259 1 FALSE
+IFRD2 1.56542610972806 4.50279575682847 20.2751696277125 11 1.73709044769323 1.47699296592783 0.260097481765406 1 0.218819415823491 1 FALSE
+ISOC2 1.35653919273248 4.13500630208934 17.0982771183186 10 1.16088000029635 1.45733332216928 -0.296453321872929 4 NaN NA NA
+ITGB1 5.73749610754924 6.96917363119079 48.569381101685 42 5.92731202994722 5.63971214752604 0.287599882421176 2 0.288844366346485 1 FALSE
+LAIR1 5.14073096940228 7.67228689265092 58.8639861631431 32 3.00047442611951 6.24328737048734 -3.24281294436782 4 NaN NA NA
+LSAMP 5.40538485683009 7.20340373028298 51.8890253014547 38 7.456451258236 4.34877489246947 3.10767636576653 8 0.133333333333333 1 FALSE
+MUM1 3.59113963428165 6.20728875372071 38.5304336720676 26 3.26567136238311 3.75880510768392 -0.493133745300816 5.5 0.63859207768502 1 FALSE
+MYO7A 2.08943827729343 5.13674406841985 26.3861396244465 15 2.09929129953666 2.084362477956 0.0149288215806527 4 NaN NA NA
+NCAPH2 2.09924645828476 4.9160781393554 24.167824272248 16 2.7402301291671 1.76904274904235 0.971187380124752 5 0.723673609831763 1 FALSE
+OBFC2B 2.56257992189769 5.37946105314442 28.9386012222977 19 2.50827678586446 2.59055426470269 -0.0822774788382348 3.5 1 1 FALSE
+PARVB 2.21851609168455 4.93366814223579 24.3410813377123 18 2.08303594275959 2.28830889567619 -0.205272952916603 4 NaN NA NA
+PSMC3 6.17973106872374 7.13113762893614 50.8531238828289 45 6.07099348144692 6.23574740156331 -0.164753920116381 2 0.460633522588757 1 FALSE
+PSPH 3.45898367616203 5.82691731716674 33.9529654210976 27 3.23100704116237 3.57642618510125 -0.345419143938882 8 0.133333333333333 1 FALSE
+RABL5 3.2703554589894 5.97444372569743 35.6939778315254 24 3.69997306551525 3.04903729805185 0.650935767463402 4 1 1 FALSE
+RNF185 1.46932887276529 4.13672007089318 17.1124529449304 12 1.06620456119726 1.67699897266398 -0.610794411466722 2 0.288844366346485 1 FALSE
+SIN3A 4.00526302988229 6.32973969419456 40.0656045962622 30 4.28049583047595 3.86347643563706 0.417019394838893 2.5 0.583882420770365 1 FALSE
+SLC15A4 2.6490939213568 5.36541152568955 28.7876408400022 21 2.38443898616311 2.78543131221415 -0.400992326051037 5 0.723673609831763 1 FALSE
+SLC4A5 1.85823253159878 4.89934798569655 24.0036106849488 13 2.14955177017941 1.70815898445118 0.441392785728234 4 NaN NA NA
+SMYD3 1.11766527425951 3.45565630150241 11.9415604741133 10 1.17955973857534 1.08578024718772 0.0937794913876244 6 0.411313791776259 1 FALSE
+TBC1D15 2.64803303609142 5.30241142820209 28.1155669539282 21 4.13093321985626 1.88411475960651 2.24681846024975 4 1 1 FALSE
+TMEM132C 0.822592049405892 3.30504805041197 10.923342615532 6 2.0849055246802 0.172309350022156 1.91259617465805 4 NaN NA NA
+ZFHX4 2.71178769759176 5.4146903421813 29.3188715017114 21 2.51282638206758 2.81428292074058 -0.301456538672999 4 1 1 FALSE
+ZNF454 0.922860300134436 3.46176149331655 11.9837926366092 7 2.03306973832583 0.350934225914629 1.6821355124112 5 0.723673609831763 1 FALSE
+ZNF780B 1.00358719015216 3.48539676962484 12.1479906417113 8 1.5525594677108 0.720783289591644 0.831776178119159 5 0.723673609831763 1 FALSE
b
diff -r 000000000000 -r c67dba545a37 test-data/geneMetadata_nolog.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/geneMetadata_nolog.tsv Mon Jun 24 13:39:39 2019 -0400
b
b'@@ -0,0 +1,23369 @@\n+genes\tmean\tSD\tVariance\tPercentage_Detection\tmean_condition2\tmean_condition1\tlog2FC\tstatistic\tp.value\tp.adjust\tSignificant\n+1/2-SBSRNA4\t1.42\t8.57902068767735\t73.599595959596\t5\t2.31818181818182\t1.16666666666667\t0.990601301997751\t862\t0.938532388043819\t1\tFALSE\n+A1BG\t16.31\t35.7029537866394\t1274.70090909091\t35\t20.3636363636364\t15.1666666666667\t0.425091163942767\t695.5\t0.113486402825499\t0.38108208955687\tFALSE\n+A1BG-AS1\t0.91\t5.25721245797455\t27.6382828282828\t6\t1.86363636363636\t0.641025641025641\t1.53966641506831\t822\t0.472969642559525\t0.933964658308623\tFALSE\n+A1CF\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+A2LD1\t1.15\t7.44321940772373\t55.4015151515151\t3\t4.54545454545455\t0.192307692307692\t4.56293619439116\t790\t0.0573568257293851\t0.252399828906917\tFALSE\n+A2M\t54.41\t214.442339734268\t45985.5170707071\t17\t72.2272727272727\t49.3846153846154\t0.548482021730011\t885\t0.736149510441749\t1\tFALSE\n+A2ML1\t8.04\t38.7769899488724\t1503.65494949495\t9\t0\t10.3076923076923\t-Inf\t957\t0.0987338813507554\t0.343810050223471\tFALSE\n+A2MP1\t0.85\t8.5\t72.25\t1\t3.86363636363636\t0\tInf\t819\t0.0630558447149376\t0.252399828906917\tFALSE\n+A4GALT\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+A4GNT\t0.38\t3.8\t14.44\t1\t0\t0.487179487179487\t-Inf\t869\t0.612193566468421\t0.993316154786423\tFALSE\n+AA06\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+AAA1\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+AAAS\t22.87\t48.911103653527\t2392.29606060606\t33\t39.5454545454545\t18.1666666666667\t1.12221814804302\t639\t0.0296888770304841\t0.168390698652513\tFALSE\n+AACS\t5.53\t30.5241930873916\t931.726363636364\t8\t4.81818181818182\t5.73076923076923\t-0.250239966395168\t845\t0.82502399744609\t1\tFALSE\n+AACSP1\t0.54\t4.92041716224398\t24.2105050505051\t2\t0\t0.692307692307692\t-Inf\t880\t0.460699420081267\t0.916301306363014\tFALSE\n+AADAC\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+AADACL2\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+AADACL3\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+AADACL4\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+AADAT\t3.93\t18.8203924432295\t354.207171717172\t8\t1.59090909090909\t4.58974358974359\t-1.52856216009434\t801\t0.317634459751015\t0.780000216000601\tFALSE\n+AAGAB\t29.31\t75.5754616528434\t5711.6504040404\t31\t35.0909090909091\t27.6794871794872\t0.342280109470526\t615\t0.0138005529267054\t0.10061747977568\tFALSE\n+AAK1\t17.9\t39.9556572396769\t1596.45454545455\t48\t12.7727272727273\t19.3461538461538\t-0.598980170080806\t714\t0.197624825962324\t0.559565846733017\tFALSE\n+AAMP\t78.36\t103.098415275518\t10629.2832323232\t61\t138.045454545455\t61.525641025641\t1.16588369567622\t531.5\t0.00515316645132102\t0.0550110523684192\tFALSE\n+AANAT\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+AARS\t127.52\t241.980526806467\t58554.5753535354\t58\t163.636363636364\t117.333333333333\t0.479880454663599\t627.5\t0.0467114041716336\t0.22833273569523\tFALSE\n+AARS2\t22.27\t68.5031673676038\t4692.68393939394\t23\t22.1363636363636\t22.3076923076923\t-0.0111230284287974\t767\t0.307026544333588\t0.761822668510737\tFALSE\n+AARSD1\t29.59\t85.4195935936069\t7296.50696969697\t26\t49.5\t23.974358974359\t1.04593628416686\t673.5\t0.0471243037342122\t0.229656043724937\tFALSE\n+AASDH\t14.71\t46.2787546430663\t2141.72313131313\t22\t7.86363636363636\t16.6410256410256\t-1.08147584013746\t733\t0.152972646422008\t0.473214826792359\tFALSE\n+AASDHPPT\t50.06\t100.791195302492\t10158.8650505051\t43\t86.9090909090909\t39.6666666666667\t1.13157992675666\t523.5\t0.00207811192945194\t0.031587409630874\tFALSE\n+AASS\t81.75\t135.068286134059\t18243.4419191919\t70\t69.6363636363636\t85.1666666666667\t-0.290448016928805\t825.5\t0.78719894328116\t1\tFALSE\n+AATF\t23.39\t47.5177574463197\t2257.93727272727\t30\t17.8181818181818\t24.9615384615385\t-0.486356724380135\t787\t0.469226173081331\t0.929226882420724\tFALSE\n+AATK\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+AATK-AS1\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+ABAT\t25.18\t72.0520827336908\t5191.50262626263\t27\t19.4545454545455\t26.7948717948718\t-0.461849640342147\t963\t0.265959248200667\t0.696238809213989\tFALSE\n+ABCA1\t92.32\t189.444423235284\t35889.1894949495\t79\t98.7727272727273\t90.5\t0.12619495346078\t623\t0.0499324755449654\t0.23900493415296\tFALSE\n+ABCA10\t0.07\t0.7\t0.49\t1\t0\t0.0897435897435897\t-Inf\t869\t0.612193566468421\t0.993316154786423\tFALSE\n+ABCA11P\t2.17\t10.9968360922769\t120.930404040404\t9\t4.'..b'1818\t5.47435897435897\t-2.74219665795323\t826\t0.524267012354626\t0.993316154786423\tFALSE\n+ZSCAN20\t4.43\t32.8969173588829\t1082.20717171717\t4\t4.86363636363636\t4.30769230769231\t0.175120163847338\t803\t0.181649514338153\t0.530180113586893\tFALSE\n+ZSCAN21\t11.63\t30.1838323838067\t911.063737373737\t20\t14.8636363636364\t10.7179487179487\t0.471758293642151\t740\t0.161642297533166\t0.490425501006884\tFALSE\n+ZSCAN22\t3.08\t10.954156076738\t119.993535353535\t12\t3.86363636363636\t2.85897435897436\t0.434461636442348\t883.5\t0.712440567316822\t1\tFALSE\n+ZSCAN23\t0.92\t5.28898225874632\t27.9733333333333\t6\t0.863636363636364\t0.935897435897436\t-0.115926445211481\t826\t0.524267012354626\t0.993316154786423\tFALSE\n+ZSCAN29\t13.46\t44.2366044324965\t1956.87717171717\t24\t23.2272727272727\t10.7051282051282\t1.11751769380116\t704\t0.0881511485647073\t0.320024156433632\tFALSE\n+ZSCAN30\t19.76\t44.8298962296323\t2009.7195959596\t37\t29.6818181818182\t16.9615384615385\t0.807312435492705\t747\t0.28835039962238\t0.727402603613833\tFALSE\n+ZSCAN4\t0\t0\t0\t0\t0\t0\tNA\t858\tNaN\tNA\tNA\n+ZSCAN5A\t3.47\t15.643409558861\t244.716262626263\t6\t12.6363636363636\t0.884615384615385\t3.83638721617029\t721\t0.00579098041021862\t0.0592225952848966\tFALSE\n+ZSCAN5B\t0.02\t0.2\t0.04\t1\t0.0909090909090909\t0\tInf\t819\t0.0630558447149376\t0.252399828906917\tFALSE\n+ZSWIM1\t1.98\t11.6705448099742\t136.201616161616\t11\t8.68181818181818\t0.0897435897435897\t6.5960445062031\t714.5\t0.0284480431513299\t0.163415406184926\tFALSE\n+ZSWIM2\t2.18\t16.307883697987\t265.947070707071\t2\t0\t2.79487179487179\t-Inf\t880\t0.460699420081267\t0.916301306363014\tFALSE\n+ZSWIM3\t3.15\t16.2003709896416\t262.45202020202\t5\t3.59090909090909\t3.02564102564103\t0.247108299040213\t815\t0.349081829073833\t0.800436942927817\tFALSE\n+ZSWIM4\t3.18\t12.9039810629405\t166.512727272727\t13\t1.22727272727273\t3.73076923076923\t-1.60401724051986\t902\t0.535665778056976\t0.993316154786423\tFALSE\n+ZSWIM5\t4.56\t30.2762766748643\t916.652929292929\t4\t11.0454545454545\t2.73076923076923\t2.01607348360489\t752.5\t0.0100718068248359\t0.0809903585281367\tFALSE\n+ZSWIM6\t3.85\t13.3184576108239\t177.381313131313\t16\t8.36363636363636\t2.57692307692308\t1.69848086510304\t676.5\t0.0182787891343748\t0.121547319770558\tFALSE\n+ZSWIM7\t15.03\t40.1047756545655\t1608.39303030303\t21\t16.5909090909091\t14.5897435897436\t0.185438411685749\t628\t0.00731899248545088\t0.0679230406672026\tFALSE\n+ZUFSP\t1.71\t7.7045113374889\t59.359494949495\t8\t1.81818181818182\t1.67948717948718\t0.114475693574863\t848\t0.866562196838596\t1\tFALSE\n+ZW10\t9.9\t35.4670141245227\t1257.90909090909\t13\t12.4545454545455\t9.17948717948718\t0.440186905921221\t753\t0.136770991678465\t0.43769714236406\tFALSE\n+ZWILCH\t14.89\t48.8286831998397\t2384.2403030303\t16\t22\t12.8846153846154\t0.771854051433255\t782.5\t0.328153798010868\t0.798697838966562\tFALSE\n+ZWINT\t4.58\t33.4423006796404\t1118.38747474747\t4\t6\t4.17948717948718\t0.521636565352327\t753.5\t0.0108079989925571\t0.0848008530185495\tFALSE\n+ZXDA\t5.79\t32.737799794023\t1071.76353535354\t12\t15.1363636363636\t3.15384615384615\t2.26283446195697\t792\t0.334208664703236\t0.799577485898251\tFALSE\n+ZXDB\t11.4\t43.095852761635\t1857.25252525253\t15\t2.27272727272727\t13.974358974359\t-2.62028562966461\t929.5\t0.341586693677617\t0.800436942927817\tFALSE\n+ZXDC\t45.35\t91.3180008143371\t8338.97727272727\t50\t71.1818181818182\t38.0641025641026\t0.903077719529336\t583\t0.0146130770202724\t0.104876653504215\tFALSE\n+ZYG11A\t0.08\t0.706106124166799\t0.498585858585859\t2\t0.318181818181818\t0.0128205128205128\t4.63332552228256\t829.5\t0.336693018711006\t0.799577485898251\tFALSE\n+ZYG11B\t17.75\t45.9502091091185\t2111.42171717172\t25\t37.1363636363636\t12.2820512820513\t1.59628102263445\t538\t0.000471451541486177\t0.0138881306355884\tFALSE\n+ZYX\t181.24\t272.330834156405\t74164.0832323232\t66\t327.681818181818\t139.935897435897\t1.22752952419782\t474\t0.00113107260496839\t0.0221921953256938\tFALSE\n+ZZEF1\t15.34\t51.7181991296306\t2674.77212121212\t20\t12.8181818181818\t16.0512820512821\t-0.324496894308874\t927.5\t0.411156780918533\t0.887157124330959\tFALSE\n+ZZZ3\t15.38\t37.4448496815886\t1402.11676767677\t31\t26.9545454545455\t12.1153846153846\t1.15368837566252\t635\t0.0238567349022538\t0.145785612237413\tFALSE\n'
b
diff -r 000000000000 -r c67dba545a37 test-data/signature_2columns.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/signature_2columns.tsv Mon Jun 24 13:39:39 2019 -0400
b
@@ -0,0 +1,101 @@
+cell rate
+1001000173.B4 LOW
+1001000173.A2 LOW
+1001000173.E2 LOW
+1001000173.F6 LOW
+1001000173.B12 LOW
+1001000173.H1 HIGH
+1001000173.E4 HIGH
+1001000173.C2 LOW
+1001000173.F4 LOW
+1001000173.E10 HIGH
+1001000173.E6 LOW
+1001000173.C4 HIGH
+1001000173.B10 LOW
+1001000173.A7 LOW
+1001000173.B8 LOW
+1001000173.F9 LOW
+1001000173.G6 HIGH
+1001000173.A9 LOW
+1001000173.D2 HIGH
+1001000173.F2 LOW
+1001000173.H9 LOW
+1001000173.G1 LOW
+1001000173.B3 LOW
+1001000173.D7 HIGH
+1001000173.A12 LOW
+1001000173.C1 LOW
+1001000173.H7 HIGH
+1001000173.H5 LOW
+1001000173.G2 LOW
+1001000173.A3 LOW
+1001000173.D3 LOW
+1001000173.E1 LOW
+1001000173.G12 HIGH
+1001000173.C10 HIGH
+1001000173.C3 LOW
+1001000173.A5 LOW
+1001000173.G4 LOW
+1001000173.B11 LOW
+1001000173.G9 HIGH
+1001000173.F1 LOW
+1001000173.D8 LOW
+1001000173.E12 HIGH
+1001000173.F11 LOW
+1001000173.E5 LOW
+1001000173.G10 LOW
+1001000173.B9 LOW
+1001000173.C7 HIGH
+1001000173.B2 LOW
+1001000173.H4 LOW
+1001000174.G5 LOW
+1001000174.H9 LOW
+1001000174.A10 LOW
+1001000174.G10 HIGH
+1001000174.C8 LOW
+1001000174.F6 LOW
+1001000174.B4 LOW
+1001000174.H7 LOW
+1001000174.E10 HIGH
+1001000174.D5 LOW
+1001000174.E5 LOW
+1001000174.B11 LOW
+1001000174.F10 LOW
+1001000174.A5 LOW
+1001000174.B8 LOW
+1001000174.F2 LOW
+1001000174.F9 HIGH
+1001000174.F4 HIGH
+1001000174.B6 LOW
+1001000174.E2 LOW
+1001000174.G2 LOW
+1001000174.D8 LOW
+1001000174.H6 LOW
+1001000174.C3 HIGH
+1001000174.B7 LOW
+1001000174.A7 LOW
+1001000174.H10 LOW
+1001000174.F7 HIGH
+1001000174.A2 LOW
+1001000174.E4 LOW
+1001000174.D12 LOW
+1001000174.H4 LOW
+1001000174.C5 LOW
+1001000174.E9 LOW
+1001000174.D1 LOW
+1001000174.G4 LOW
+1001000174.G9 LOW
+1001000174.D4 HIGH
+1001000174.H11 HIGH
+1001000174.A9 LOW
+1001000174.A4 HIGH
+1001000174.C7 LOW
+1001000174.D11 LOW
+1001000174.F5 LOW
+1001000174.G6 LOW
+1001000174.D6 LOW
+1001000174.H3 LOW
+1001000174.F12 LOW
+1001000174.E6 LOW
+1001000174.G3 LOW
+1001000174.A8 LOW