# HG changeset patch
# User genouest
# Date 1523525025 14400
# Node ID ceef9bc6bbc7a8587cbf01918bab47d60e6ef8c0
planemo upload for repository https://github.com/genouest/galaxy-tools/tree/master/tools/askor commit 08a187f91ba050d584e586d2fcc99d984dac607c
diff -r 000000000000 -r ceef9bc6bbc7 AskoR.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/AskoR.R Thu Apr 12 05:23:45 2018 -0400
@@ -0,0 +1,651 @@
+asko3c <- function(data_list){
+ asko<-list()
+
+ ######### Condition ############
+
+ condition<-unique(data_list$samples$condition) # retrieval of different condition's names
+ col1<-which(colnames(data_list$samples)=="condition") # determination of number of the column "condition"
+ colcol<-which(colnames(data_list$samples)=="color")
+ if(is.null(parameters$fileofcount)){
+ col2<-which(colnames(data_list$samples)=="file") # determination of number of the column "replicate"
+ column_name<-colnames(data_list$samples[,c(-col1,-col2,-colcol)]) # retrieval of column names needful to create the file condition
+ }else{column_name<-colnames(data_list$samples[,c(-col1,-colcol)])}
+ condition_asko<-data.frame(row.names=condition) # initialization of the condition's data frame
+ #level<-list() # initialization of the list will contain the level
+ # of each experimental factor
+ for (name in column_name){ # for each experimental factor :
+ # if(str_detect(name, "condition")){ # for the column of conditions, the level is fixed to 0 because
+ # level<-append(level, 0) # "condition" must be the first column of the data frame
+ # }else{ #
+ # level<-append(level, length(levels(data_list$samples[,name]))) # adding to the list the level of other experimental factors
+ # }
+ #
+ condition_asko$n<-NA # initialization of new column in the condition's data frame
+ colnames(condition_asko)[colnames(condition_asko)=="n"]<-name # to rename the new column with with the name of experimental factor
+ for(condition_name in condition){ # for each condition's names
+ condition_asko[condition_name,name]<-as.character(unique(data_list$samples[data_list$samples$condition==condition_name, name]))
+ } # filling the condition's data frame
+ }
+ # order_level<-order(unlist(level)) # list to vector
+ # condition_asko<-condition_asko[,order_level] # order columns according to their level
+ #asko$condition<-condition_asko # adding data frame of conditions to asko object
+
+ #print(condition_asko)
+
+
+ #############contrast + context##################
+ i=0
+
+ contrast_asko<-data.frame(row.names = colnames(data_list$contrast)) # initialization of the contrast's data frame
+ contrast_asko$Contrast<-NA # all columns are created et initialized with
+ contrast_asko$context1<-NA # NA values
+ contrast_asko$context2<-NA #
+
+ list_context<-list() # initialization of context and condition lists
+ list_condition<-list() # will be used to create the context data frame
+ if(parameters$mk_context==TRUE){
+ for (contrast in colnames(data_list$contrast)){ # for each contrast :
+ i=i+1 # contrast data frame will be filled line by line
+ #print(contrast)
+ set_cond1<-row.names(data_list$contrast)[data_list$contrast[,contrast]>0] # retrieval of 1st set of condition's names implicated in a given contrast
+ set_cond2<-row.names(data_list$contrast)[data_list$contrast[,contrast]<0] # retrieval of 2nd set of condition's names implicated in a given contrast
+ parameters<-colnames(condition_asko) # retrieval of names of experimental factor
+ print(paste("set_cond1 : ", set_cond1, sep = ""))
+ # print(length(set_cond1))
+ print(paste("set_cond2 : ", set_cond2, sep = ""))
+ # print(length(set_cond2))
+ if(length(set_cond1)==1){complex1=F}else{complex1=T}# to determine if we have complex contrast (multiple conditions
+ if(length(set_cond2)==1){complex2=F}else{complex2=T}# compared to multiple conditions) or not
+ #print(complex1)
+ if(complex1==F && complex2==F){ # Case 1: one condition against one condition
+ contrast_asko[i,"context1"]<-set_cond1 # filling contrast data frame with the name of the 1st context
+ contrast_asko[i,"context2"]<-set_cond2 # filling contrast data frame with the name of the 2nd context
+ contrast_name<-paste(set_cond1,set_cond2, sep = "vs") # creation of contrast name by associating the names of contexts
+ contrast_asko[i,"Contrast"]<-contrast_name # filling contrast data frame with contrast name
+ list_context<-append(list_context, set_cond1) #
+ list_condition<-append(list_condition, set_cond1) # adding respectively to the lists "context" and "condition" the context name
+ list_context<-append(list_context, set_cond2) # and the condition name associated
+ list_condition<-append(list_condition, set_cond2) #
+ }
+ if(complex1==F && complex2==T){ # Case 2: one condition against multiple condition
+ contrast_asko[i,"context1"]<-set_cond1 # filling contrast data frame with the name of the 1st context
+ list_context<-append(list_context, set_cond1) # adding respectively to the lists "context" and "condition" the 1st context
+ list_condition<-append(list_condition, set_cond1) # name and the condition name associated
+ l=0
+ # "common_factor" will contain the common experimental factors shared by
+ common_factor=list() # conditions belonging to the complex context
+ for (param_names in parameters){ # for each experimental factor
+ facteur<-unique(c(condition_asko[,param_names])) # retrieval of possible values for the experimental factor
+ l=l+1 #
+ for(value in facteur){ # for each possible values
+ verif<-unique(str_detect(set_cond2, value)) # verification of the presence of values in each condition contained in the set
+ if(length(verif)==1 && verif==TRUE){common_factor[l]<-value} # if verif contains only TRUE, value of experimental factor
+ } # is added as common factor
+ }
+ if(length(common_factor)>1){ # if there are several common factor
+ common_factor<-toString(common_factor) # the list is converted to string
+ contx<-str_replace(common_factor,", ","")
+ contx<-str_replace_all(contx, "NULL", "")}else{contx<-common_factor} # and all common factor are concatenated to become the name of context
+ contrast_asko[i,"context2"]<-contx # filling contrast data frame with the name of the 2nd context
+ contrast_name<-paste(set_cond1,contx, sep = "vs") # concatenation of context names to make the contrast name
+ contrast_asko[i,"Contrast"]<-contrast_name # filling contrast data frame with the contrast name
+ for(j in 1:length(set_cond2)){ # for each condition contained in the complex context (2nd):
+ list_context<-append(list_context, contx) # adding condition name with the context name associated
+ list_condition<-append(list_condition, set_cond2[j]) # to their respective list
+ }
+ }
+ if(complex1==T && complex2==F){ # Case 3: multiple conditions against one condition
+ contrast_asko[i,"context2"]<-set_cond2 # filling contrast data frame with the name of the 2nd context
+ list_context<-append(list_context, set_cond2) # adding respectively to the lists "context" and "condition" the 2nd context
+ list_condition<-append(list_condition, set_cond2) # name and the 2nd condition name associated
+ l=0
+ # "common_factor" will contain the common experimental factors shared by
+ common_factor=list() # conditions belonging to the complex context
+ for (param_names in parameters){ # for each experimental factor:
+ facteur<-unique(c(condition_asko[,param_names])) # retrieval of possible values for the experimental factor
+ l=l+1
+ for(value in facteur){ # for each possible values:
+ verif<-unique(str_detect(set_cond1, value)) # verification of the presence of values in each condition contained in the set
+ if(length(verif)==1 && verif==TRUE){common_factor[l]<-value} # if verif contains only TRUE, value of experimental factor
+ } # is added as common factor
+ }
+ if(length(common_factor)>1){ # if there are several common factor
+ common_factor<-toString(common_factor) # the list is converted to string
+ contx<-str_replace(common_factor,", ","")
+ contx<-str_replace_all(contx, "NULL", "")}else{contx<-common_factor} # and all common factor are concatenated to become the name of context
+ contrast_asko[i,"context1"]<-contx # filling contrast data frame with the name of the 1st context
+ contrast_name<-paste(contx,set_cond2, sep = "vs") # concatenation of context names to make the contrast name
+ contrast_asko[i,"Contrast"]<-contrast_name # filling contrast data frame with the contrast name
+ for(j in 1:length(set_cond1)){ # for each condition contained in the complex context (1st):
+ list_context<-append(list_context, contx) # adding condition name with the context name associated
+ list_condition<-append(list_condition, set_cond1[j]) # to their respective list
+ }
+ }
+ if(complex1==T && complex2==T){ # Case 4: multiple conditions against multiple conditions
+ m=0 #
+ n=0 #
+ common_factor1=list() # list of common experimental factors shared by conditions of the 1st context
+ common_factor2=list() # list of common experimental factors shared by conditions of the 2nd context
+ w=1
+ for (param_names in parameters){ # for each experimental factor:
+ print(w)
+ w=w+1
+ facteur<-unique(c(condition_asko[,param_names])) # retrieval of possible values for the experimental factor
+ print(paste("facteur : ", facteur, sep=""))
+ for(value in facteur){ # for each possible values:
+ print(value)
+ #print(class(value))
+ #print(set_cond1)
+ verif1<-unique(str_detect(set_cond1, value)) # verification of the presence of values in each condition
+ # contained in the 1st context
+ verif2<-unique(str_detect(set_cond2, value)) # verification of the presence of values in each condition
+ # contained in the 2nd context
+
+ if(length(verif1)==1 && verif1==TRUE){m=m+1;common_factor1[m]<-value} # if verif=only TRUE, value of experimental factor is added as common factor
+ if(length(verif2)==1 && verif2==TRUE){n=n+1;common_factor2[n]<-value} # if verif=only TRUE, value of experimental factor is added as common factor
+ }
+ }
+ print(paste("common_factor1 : ",common_factor1,sep=""))
+ print(paste("common_factor2 : ",common_factor2,sep=""))
+
+ if(length(common_factor1)>1){ # if there are several common factor for conditions in the 1st context
+ common_factor1<-toString(common_factor1) # conversion list to string
+ contx1<-str_replace(common_factor1,", ","")}else{contx1<-common_factor1}# all common factor are concatenated to become the name of context
+ contx1<-str_replace_all(contx1, "NULL", "")
+ print(paste("contx1 : ", contx1, sep=""))
+ if(length(common_factor2)>1){ # if there are several common factor for conditions in the 2nd context
+ common_factor2<-toString(common_factor2) # conversion list to string
+ contx2<-str_replace(common_factor2,", ","")}else{contx2<-common_factor2}# all common factor are concatenated to become the name of context
+ contx2<-str_replace_all(contx2, "NULL", "")
+ print(paste("contx2 : ", contx2, sep=""))
+ contrast_asko[i,"context1"]<-contx1 # filling contrast data frame with the name of the 1st context
+ contrast_asko[i,"context2"]<-contx2 # filling contrast data frame with the name of the 2nd context
+ contrast_asko[i,"Contrast"]<-paste(contx1,contx2, sep = "vs") # filling contrast data frame with the name of the contrast
+ for(j in 1:length(set_cond1)){ # for each condition contained in the complex context (1st):
+ list_context<-append(list_context, contx1) # verification of the presence of values in each condition
+ list_condition<-append(list_condition, set_cond1[j]) # contained in the 1st context
+ }
+ for(j in 1:length(set_cond2)){ # for each condition contained in the complex context (2nd):
+ list_context<-append(list_context, contx2) # verification of the presence of values in each condition
+ list_condition<-append(list_condition, set_cond2[j]) # contained in the 1st context
+ }
+ }
+ }
+ }
+ else{
+ for (contrast in colnames(data_list$contrast)){
+ i=i+1
+ contexts=strsplit2(contrast,"vs")
+ contrast_asko[i,"Contrast"]<-contrast
+ contrast_asko[i,"context1"]=contexts[1]
+ contrast_asko[i,"context2"]=contexts[2]
+ set_cond1<-row.names(data_list$contrast)[data_list$contrast[,contrast]>0]
+ set_cond2<-row.names(data_list$contrast)[data_list$contrast[,contrast]<0]
+ for (cond1 in set_cond1){
+# print(contexts[1])
+ # print(cond1)
+ list_context<-append(list_context, contexts[1])
+ list_condition<-append(list_condition, cond1)
+ }
+ for (cond2 in set_cond2){
+ list_context<-append(list_context, contexts[2])
+ list_condition<-append(list_condition, cond2)
+ }
+ }
+ }
+
+ list_context<-unlist(list_context) # conversion list to vector
+ list_condition<-unlist(list_condition) # conversion list to vector
+# print(list_condition)
+# print(list_context)
+ context_asko<-data.frame(list_context,list_condition) # creation of the context data frame
+ context_asko<-unique(context_asko)
+ colnames(context_asko)[colnames(context_asko)=="list_context"]<-"context" # header formatting for askomics
+ colnames(context_asko)[colnames(context_asko)=="list_condition"]<-"condition" # header formatting for askomics
+ #asko$contrast<-contrast_asko # adding context data frame to asko object
+ #asko$context<-context_asko # adding context data frame to asko object
+ asko<-list("condition"=condition_asko, "contrast"=contrast_asko, "context"=context_asko)
+ colnames(context_asko)[colnames(context_asko)=="context"]<-"Context" # header formatting for askomics
+ colnames(context_asko)[colnames(context_asko)=="condition"]<-"has@Condition" # header formatting for askomics
+ colnames(contrast_asko)[colnames(contrast_asko)=="context1"]<-paste("context1_of", "Context", sep="@") # header formatting for askomics
+ colnames(contrast_asko)[colnames(contrast_asko)=="context2"]<-paste("context2_of", "Context", sep="@") # header formatting for askomics
+
+ ######## Files creation ########
+
+ write.table(data.frame("Condition"=row.names(condition_asko),condition_asko), paste0(parameters$out_dir,"/condition.asko.txt"), sep = parameters$sep, row.names = F, quote=F) # creation of condition file for asko
+ write.table(context_asko, paste0(parameters$out_dir,"/context.asko.txt"), sep=parameters$sep, col.names = T, row.names = F,quote=F) # creation of context file for asko
+ write.table(contrast_asko, paste0(parameters$out_dir,"/contrast.asko.txt"), sep=parameters$sep, col.names = T, row.names = F, quote=F) # creation of contrast file for asko
+ return(asko)
+}
+
+.NormCountsMean <- function(glmfit, ASKOlist, context){
+
+ lib_size_norm<-glmfit$samples$lib.size*glmfit$samples$norm.factors # normalization computation of all library sizes
+ set_condi<-ASKOlist$context$condition[ASKOlist$context$context==context] # retrieval of condition names associated to context
+
+ for (condition in set_condi){
+ sample_name<-rownames(glmfit$samples[glmfit$samples$condition==condition,]) # retrieval of the replicate names associated to conditions
+ subset_counts<-data.frame(row.names = row.names(glmfit$counts)) # initialization of data frame as subset of counts table
+ for(name in sample_name){
+ lib_sample_norm<-glmfit$samples[name,"lib.size"]*glmfit$samples[name,"norm.factors"] # normalization computation of sample library size
+ subset_counts$c<-glmfit$counts[,name] # addition in subset of sample counts column
+ subset_counts$c<-subset_counts$c*mean(lib_size_norm)/lib_sample_norm # normalization computation of sample counts
+ colnames(subset_counts)[colnames(subset_counts)=="c"]<-name # to rename the column with the condition name
+ }
+ mean_counts<-rowSums(subset_counts)/ncol(subset_counts) # computation of the mean
+ ASKOlist$stat.table$mean<-mean_counts # subset integration in the glm_result table
+ colnames(ASKOlist$stat.table)[colnames(ASKOlist$stat.table)=="mean"]<-paste(context,condition,sep = "/")
+ } # to rename the column with the context name
+ return(ASKOlist$stat.table) # return the glm object
+}
+
+AskoStats <- function (glm_test, fit, contrast, ASKOlist, dge,parameters){
+ contrasko<-ASKOlist$contrast$Contrast[row.names(ASKOlist$contrast)==contrast] # to retrieve the name of contrast from Asko object
+ contx1<-ASKOlist$contrast$context1[row.names(ASKOlist$contrast)==contrast] # to retrieve the name of 1st context from Asko object
+ contx2<-ASKOlist$contrast$context2[row.names(ASKOlist$contrast)==contrast] # to retrieve the name of 2nd context from Asko object
+
+ ASKO_stat<-glm_test$table
+ ASKO_stat$Test_id<-paste(contrasko, rownames(ASKO_stat), sep = "_") # addition of Test_id column = unique ID
+ ASKO_stat$contrast<-contrasko # addition of the contrast of the test
+ ASKO_stat$gene <- row.names(ASKO_stat) # addition of gene column = gene ID
+ ASKO_stat$FDR<-p.adjust(ASKO_stat$PValue, method=parameters$p_adj_method) # computation of False Discovery Rate
+
+ ASKO_stat$Significance=0 # Between context1 and context2 :
+ ASKO_stat$Significance[ASKO_stat$logFC< 0 & ASKO_stat$FDR<=parameters$threshold_FDR] = -1 # Significance values = -1 for down regulated genes
+ ASKO_stat$Significance[ASKO_stat$logFC> 0 & ASKO_stat$FDR<=parameters$threshold_FDR] = 1 # Significance values = 1 for up regulated genes
+
+ if(parameters$Expression==TRUE){
+ ASKO_stat$Expression=NA # addition of column "expression"
+ ASKO_stat$Expression[ASKO_stat$Significance==-1]<-paste(contx1, contx2, sep="<") # the value of attribute "Expression" is a string
+ ASKO_stat$Expression[ASKO_stat$Significance==1]<-paste(contx1, contx2, sep=">") # this attribute is easier to read the Significance
+ ASKO_stat$Expression[ASKO_stat$Significance==0]<-paste(contx1, contx2, sep="=") # of expression between two contexts
+ }
+ if(parameters$logFC==T){cola="logFC"}else{cola=NULL} #
+ if(parameters$FC==T){colb="FC";ASKO_stat$FC <- 2^abs(ASKO_stat$logFC)}else{colb=NULL} # computation of Fold Change from log2FC
+ if(parameters$Sign==T){colc="Significance"} #
+ if(parameters$logCPM==T){cold="logCPM"}else{cold=NULL} #
+ if(parameters$LR==T){cole="LR"}else{cole=NULL} #
+ if(parameters$FDR==T){colf="FDR"}else{colf=NULL}
+
+ ASKOlist$stat.table<-ASKO_stat[,c("Test_id","contrast","gene",cola,colb,"PValue", # adding table "stat.table" to the ASKOlist
+ "Expression",colc,cold,cole,colf)]
+ if(parameters$mean_counts==T){ # computation of the mean of normalized counts for conditions
+ ASKOlist$stat.table<-.NormCountsMean(fit, ASKOlist, contx1) # in the 1st context
+ ASKOlist$stat.table<-.NormCountsMean(fit, ASKOlist, contx2) # in the 2nd context
+ }
+ print(table(ASKO_stat$Expression))
+ colnames(ASKOlist$stat.table)[colnames(ASKOlist$stat.table)=="gene"] <- paste("is", "gene", sep="@") # header formatting for askomics
+ colnames(ASKOlist$stat.table)[colnames(ASKOlist$stat.table)=="contrast"] <- paste("measured_in", "Contrast", sep="@") # header formatting for askomics
+ o <- order(ASKOlist$stat.table$FDR) # ordering genes by FDR value
+ ASKOlist$stat.table<-ASKOlist$stat.table[o,]
+ #
+ dir.create(parameters$out_dir)
+ write.table(ASKOlist$stat.table,paste0(parameters$out_dir,"/", parameters$organism, contrasko, ".txt"), #
+ sep=parameters$sep, col.names = T, row.names = F, quote=FALSE)
+
+ if(parameters$heatmap==TRUE){
+ cpm_gstats<-cpm(dge, log=TRUE)[o,][1:parameters$numhigh,]
+ heatmap.2(cpm_gstats, cexRow=0.5, cexCol=0.8, scale="row", labCol=dge$samples$Name, xlab=contrast, Rowv = FALSE, dendrogram="col")
+ }
+
+ return(ASKOlist)
+
+}
+
+loadData <- function(parameters){
+
+ #####samples#####
+ samples<-read.table(parameters$sample_file, header=TRUE, sep="\t", row.names=1, comment.char = "#") #prise en compte des r?sultats de T2
+ if(is.null(parameters$select_sample)==FALSE){
+ if(parameters$regex==TRUE){
+ selected<-c()
+ for(sel in parameters$select_sample){
+ select<-grep(sel, rownames(samples))
+ if(is.null(selected)){selected=select}else{selected<-append(selected, select)}
+ }
+ samples<-samples[selected,]
+ }else{samples<-samples[parameters$select_sample,]}
+ }
+
+ if(is.null(parameters$rm_sample)==FALSE){
+ if(parameters$regex==TRUE){
+ for(rm in parameters$rm_sample){
+ removed<-grep(rm, rownames(samples))
+# print(removed)
+ if(length(removed!=0)){samples<-samples[-removed,]}
+ }
+ }else{
+ for (rm in parameters$rm_sample) {
+ rm2<-match(rm, rownames(samples))
+ samples<-samples[-rm2,]
+ }
+ }
+ }
+ condition<-unique(samples$condition)
+ #print(condition)
+ color<-brewer.pal(length(condition), parameters$palette)
+ #print(color)
+ samples$color<-NA
+ j=0
+ for(name in condition){
+ j=j+1
+ samples$color[samples$condition==name]<-color[j]
+ }
+ #print(samples)
+
+
+ #####counts#####
+ if(is.null(parameters$fileofcount)){
+ dge<-readDGE(samples$file, labels=rownames(samples), columns=c(parameters$col_genes,parameters$col_counts), header=TRUE, comment.char="#")
+ dge<-DGEList(counts=dge$counts, samples=samples)
+ # dge$samples=samples
+ #countT<-dge$counts
+ # if(is.null(parameters$select_sample)==FALSE){
+ # slct<-grep(parameters$select_sample, colnames(countT))
+ # dge$counts<-dge$counts[,slct]
+ # dge$samples<-dge$samples[,slct]
+ # }
+ # if(is.null(parameters$rm_sample)==FALSE){
+ # rmc<-grep(parameters$rm_count, colnames(dge$counts))
+ # dge$counts<-dge$counts[,-rmc]
+ # print(ncol(dge$counts))
+ # rms<-grep(parameters$rm_sample, row.names(dge$samples))
+ # dge$samples<-dge$samples[-rms,]
+ # }
+ }else {
+ if(grepl(".csv", parameters$fileofcount)==TRUE){
+ count<-read.csv(parameters$fileofcount, header=TRUE, sep = "\t", row.names = parameters$col_genes)
+ }
+ else{
+ count<-read.table(parameters$fileofcount, header=TRUE, sep = "\t", row.names = parameters$col_genes, comment.char = "")
+ }
+ select_counts<-row.names(samples)
+ #countT<-count[,c(parameters$col_counts:length(colnames(count)))]
+ countT<-count[,select_counts]
+ dge<-DGEList(counts=countT, samples=samples)
+ # if(is.null(parameters$select_sample)==FALSE){
+ # slct<-grep(parameters$select_sample, colnames(countT))
+ # countT<-countT[,slct]
+ # }
+ # if(is.null(parameters$rm_count)==FALSE){
+ # rms<-grep(parameters$rm_count, colnames(countT))
+ # #print(rms)
+ # countT<-countT[,-rms]
+ #
+ # }
+ #print(nrow(samples))
+ #print(ncol(countT))
+ }
+
+ #####design#####
+ Group<-factor(samples$condition)
+ designExp<-model.matrix(~0+Group)
+ rownames(designExp) <- row.names(samples)
+ colnames(designExp) <- levels(Group)
+
+ #####contrast#####
+ contrastab<-read.table(parameters$contrast_file, sep="\t", header=TRUE, row.names = 1, comment.char="#", stringsAsFactors = FALSE)
+
+ rmcol<-list()
+ for(condition_name in row.names(contrastab)){
+ test<-match(condition_name, colnames(designExp),nomatch = 0)
+ if(test==0){
+ print(condition_name)
+ rm<-grep("0", contrastab[condition_name,], invert = T)
+ print(rm)
+ if(is.null(rmcol)){rmcol=rm}else{rmcol<-append(rmcol, rm)}
+ }
+ }
+ if (length(rmcol)> 0){
+ rmcol<-unlist(rmcol)
+ rmcol<-unique(rmcol)
+ rmcol=-rmcol
+ contrastab<-contrastab[,rmcol]
+ }
+
+ ord<-match(colnames(designExp),row.names(contrastab), nomatch = 0)
+ contrast_table<-contrastab[ord,]
+ colnum<-c()
+
+ for(contrast in colnames(contrast_table)){
+ set_cond1<-row.names(contrast_table)[contrast_table[,contrast]=="+"]
+ #print(set_cond1)
+ set_cond2<-row.names(contrast_table)[contrast_table[,contrast]=="-"]
+ #print(set_cond2)
+ if(length(set_cond1)!=length(set_cond2)){
+ contrast_table[,contrast][contrast_table[,contrast]=="+"]=signif(1/length(set_cond1),digits = 2)
+ contrast_table[,contrast][contrast_table[,contrast]=="-"]=signif(-1/length(set_cond2),digits = 2)
+ }
+ else {
+ contrast_table[,contrast][contrast_table[,contrast]=="+"]=1
+ contrast_table[,contrast][contrast_table[,contrast]=="-"]=-1
+ }
+ contrast_table[,contrast]<-as.numeric(contrast_table[,contrast])
+ }
+
+ #####annotation#####
+ #annotation <- read.csv(parameters$annotation_file, header = T, sep = '\t', quote = "", row.names = 1)
+
+ #data<-list("counts"=countT, "samples"=samples, "contrast"=contrast_table, "annot"=annotation, "design"=designExp)
+ #print(countT)
+ rownames(dge$samples)<-rownames(samples) # replace the renaming by files
+ data<-list("dge"=dge, "samples"=samples, "contrast"=contrast_table, "design"=designExp)
+ return(data)
+}
+
+GEfilt <- function(dge_list, parameters){
+ cpm<-cpm(dge_list)
+ logcpm<-cpm(dge_list, log=TRUE)
+ colnames(logcpm)<-rownames(dge_list$samples)
+ nsamples <- ncol(dge_list) # cr?ation nouveau plot
+ plot(density(logcpm[,1]),
+ col=as.character(dge_list$samples$color[1]), # plot exprimant la densit? de chaque g?ne
+ lwd=1,
+ ylim=c(0,0.21),
+ las=2,
+ main="A. Raw data",
+ xlab="Log-cpm") # en fonction de leurs valeurs d'expression
+ abline(v=0, lty=3)
+ for (i in 2:nsamples){ # on boucle sur chaque condition restante
+ den<-density(logcpm[,i]) # et les courbes sont rajout?es dans le plot
+ lines(den$x, col=as.character(dge_list$samples$color[i]), den$y, lwd=1) #
+ }
+ legend("topright", rownames(dge_list$samples),
+ text.col=as.character(dge_list$samples$color),
+ bty="n",
+ text.width=6,
+ cex=0.5)
+ # rowSums compte le nombre de score (cases) pour chaque colonne Sup ? 0.5
+ keep.exprs <- rowSums(cpm>parameters$threshold_cpm)>=parameters$replicate_cpm # en ajoutant >=3 cela donne un test conditionnel
+ filtered_counts <- dge_list[keep.exprs,,keep.lib.sizes=F] # si le comptage respecte la condition alors renvoie TRUE
+ filtered_cpm<-cpm(filtered_counts$counts, log=TRUE)
+
+ plot(density(filtered_cpm[,1]),
+ col=as.character(dge_list$samples$color[1]),
+ lwd=2,
+ ylim=c(0,0.21),
+ las=2,
+ main="B. Filtered data", xlab="Log-cpm")
+ abline(v=0, lty=3)
+ for (i in 2:nsamples){
+ den <- density(filtered_cpm[,i])
+ lines(den$x,col=as.character(dge_list$samples$color[i]), den$y, lwd=1)
+ }
+ legend("topright", rownames(dge_list$samples),
+ text.col=as.character(dge_list$samples$col),
+ bty="n",
+ text.width=6,
+ cex=0.5)
+ return(filtered_counts)
+}
+
+GEnorm <- function(filtered_GE, parameters){
+ filtered_cpm <- cpm(filtered_GE, log=TRUE) #nouveau calcul Cpm sur donn?es filtr?es, si log=true alors valeurs cpm en log2
+ colnames(filtered_cpm)<-rownames(filtered_GE$samples)
+ boxplot(filtered_cpm,
+ col=filtered_GE$samples$color, #boxplot des scores cpm non normalis?s
+ main="A. Before normalization",
+ cex.axis=0.5,
+ las=2,
+ ylab="Log-cpm")
+
+ norm_GE<-calcNormFactors(filtered_GE, method = parameters$normal_method) # normalisation de nos comptages par le methode TMM, estimation du taux de production d'un ARN # en estimant l'?chelle des facteurs entre echantillons -> but : pouvoir comparer nos ech entre eux
+
+ logcpm_norm <- cpm(norm_GE, log=TRUE)
+ colnames(logcpm_norm)<-rownames(filtered_GE$samples)
+ boxplot(logcpm_norm,
+ col=filtered_GE$samples$color,
+ main="B. After normalization",
+ cex.axis=0.5,
+ las=2,
+ ylab="Log-cpm")
+
+ return(norm_GE)
+}
+
+GEcorr <- function(dge, parameters){
+ lcpm<-cpm(dge, log=TRUE)
+ colnames(lcpm)<-rownames(dge$samples)
+ cormat<-cor(lcpm)
+ # color<- colorRampPalette(c("yellow", "white", "green"))(20)
+ color<-colorRampPalette(c("black","red","yellow","white"),space="rgb")(28)
+ heatmap(cormat, col=color, symm=TRUE,RowSideColors =as.character(dge$samples$color), ColSideColors = as.character(dge$samples$color))
+ #MDS
+ mds <- cmdscale(dist(t(lcpm)),k=3, eig=TRUE)
+ eigs<-round((mds$eig)*100/sum(mds$eig[mds$eig>0]),2)
+
+ mds1<-ggplot(as.data.frame(mds$points), aes(V1, V2, label = rownames(mds$points))) + labs(title="MDS Axes 1 and 2") + geom_point(color =as.character(dge$samples$color) ) + xlab(paste('dim 1 [', eigs[1], '%]')) +ylab(paste('dim 2 [', eigs[2], "%]")) + geom_label_repel(aes(label = rownames(mds$points)), color = 'black',size = 3.5)
+ print(mds1)
+ #ggsave("mds_corr1-2.tiff")
+ #ggtitle("MDS Axes 2 and 3")
+ mds2<-ggplot(as.data.frame(mds$points), aes(V2, V3, label = rownames(mds$points))) + labs(title="MDS Axes 2 and 3") + geom_point(color =as.character(dge$samples$color) ) + xlab(paste('dim 2 [', eigs[2], '%]')) +ylab(paste('dim 3 [', eigs[3], "%]")) + geom_label_repel(aes(label = rownames(mds$points)), color = 'black',size = 3.5)
+ print(mds2)
+ # ggtitle("MDS Axes 1 and 3")
+ #ggsave("mds_corr2-3.tiff")
+ mds3<-ggplot(as.data.frame(mds$points), aes(V1, V3, label = rownames(mds$points))) + labs(title="MDS Axes 1 and 3") + geom_point(color =as.character(dge$samples$color) ) + xlab(paste('dim 1 [', eigs[1], '%]')) +ylab(paste('dim 3 [', eigs[3], "%]")) + geom_label_repel(aes(label = rownames(mds$points)), color = 'black',size = 3.5)
+ print(mds3)
+ #ggsave("mds_corr1-3.tiff")
+}
+
+DEanalysis <- function(norm_GE, data_list, asko_list, parameters){
+
+ normGEdisp <- estimateDisp(norm_GE, data_list$design)
+ if(parameters$glm=="lrt"){
+ fit <- glmFit(normGEdisp, data_list$design, robust = T)
+ }
+ if(parameters$glm=="qlf"){
+ fit <- glmQLFit(normGEdisp, data_list$design, robust = T)
+ plotQLDisp(fit)
+ }
+
+ #plotMD.DGEGLM(fit)
+ #plotBCV(norm_GE)
+
+ #sum<-norm_GE$genes
+ for (contrast in colnames(data_list$contrast)){
+ print(asko_list$contrast$Contrast[contrast])
+ if(parameters$glm=="lrt"){
+ glm_test<-glmLRT(fit, contrast=data_list$contrast[,contrast])
+ }
+ if(parameters$glm=="qlf"){
+ glm_test<-glmQLFTest(fit, contrast=data_list$contrast[,contrast])
+ }
+
+ #sum[,contrast]<-decideTestsDGE(glm, adjust.method = parameters$p_adj_method, lfc=1)
+ #print(table(sum[,contrast]))
+ AskoStats(glm_test, fit, contrast, asko_list,normGEdisp,parameters)
+ }
+}
+
+Asko_start <-function(){
+ library(limma)
+ library(statmod)
+ library(edgeR)
+ library(ggplot2)
+ library(RColorBrewer)
+ library(ggrepel)
+ library(gplots)
+ library(stringr)
+ library(optparse)
+ option_list = list(
+ make_option(c("-o", "--out"), type="character", default="out.pdf",dest="output_pdf",
+ help="output file name [default= %default]", metavar="character"),
+ make_option(c("-d", "--dir"), type="character", default=".",dest="dir_path",
+ help="data directory path [default= %default]", metavar="character"),
+ make_option("--outdir", type="character", default=".",dest="out_dir",
+ help="outputs directory [default= %default]", metavar="character"),
+ make_option(c("-O", "--org"), type="character", default="Asko", dest="organism",
+ help="Organism name [default= %default]", metavar="character"),
+ make_option(c("-f", "--fileofcount"), type="character", default=NULL, dest="fileofcount",
+ help="file of counts [default= %default]", metavar="character"),
+ make_option(c("-G", "--col_genes"), type="integer", default=1, dest="col_genes",
+ help="col of ids in count files [default= %default]", metavar="integer"),
+ make_option(c("-C", "--col_counts"), type="integer", default=7,dest="col_counts",
+ help="col of counts in count files [default= %default (featureCounts) ]", metavar="integer"),
+ make_option(c("-t", "--sep"), type="character", default="\t", dest="sep",
+ help="col separator [default= %default]", metavar="character"),
+ make_option(c("-a", "--annotation"), type="character", default="annotation.txt", dest="annotation_file",
+ help="annotation file [default= %default]", metavar="character"),
+ make_option(c("-s", "--sample"), type="character", default="Samples.txt", dest="sample_file",
+ help="Samples file [default= %default]", metavar="character"),
+ make_option(c("-c", "--contrasts"), type="character", default="Contrasts.txt",dest="contrast_file",
+ help="Contrasts file [default= %default]", metavar="character"),
+ make_option(c("-k", "--mk_context"), type="logical", default=FALSE,dest="mk_context",
+ help="generate automatically the context names [default= %default]", metavar="logical"),
+ make_option(c("-p", "--palette"), type="character", default="Set2", dest="palette",
+ help="Color palette (ggplot)[default= %default]", metavar="character"),
+ make_option(c("-R", "--regex"), type="logical", default=FALSE, dest="regex",
+ help="use regex when selecting/removing samples [default= %default]", metavar="logical"),
+ make_option(c("-S", "--select"), type="character", default=NULL, dest="select_sample",
+ help="selected samples [default= %default]", metavar="character"),
+ make_option(c("-r", "--remove"), type="character", default=NULL, dest="rm_sample",
+ help="removed samples [default= %default]", metavar="character"),
+ make_option(c("--th_cpm"), type="double", default=0.5, dest="threshold_cpm",
+ help="CPM's threshold [default= %default]", metavar="double"),
+ make_option(c("--rep"), type="integer", default=3, dest="replicate_cpm",
+ help="Minimum number of replicates [default= %default]", metavar="integer"),
+ make_option(c("--th_FDR"), type="double", default=0.05, dest="threshold_FDR",
+ help="FDR threshold [default= %default]", metavar="double"),
+ make_option(c("-n", "--normalization"), type="character", default="TMM", dest="normal_method",
+ help="normalization method (TMM/RLE/upperquartile/none) [default= %default]", metavar="character"),
+ make_option(c("--adj"), type="character", default="fdr", dest="p_adj_method",
+ help="p-value adjust method (holm/hochberg/hommel/bonferroni/BH/BY/fdr/none) [default= %default]", metavar="character"),
+ make_option("--glm", type="character", default="qlf", dest="glm",
+ help=" GLM method (lrt/qlf) [default= %default]", metavar="character"),
+ make_option(c("--lfc"), type="logical", default="TRUE", dest="logFC",
+ help="logFC in the summary table [default= %default]", metavar="logical"),
+ make_option("--fc", type="logical", default="TRUE", dest="FC",
+ help="FC in the summary table [default= %default]", metavar="logical"),
+ make_option(c("--lcpm"), type="logical", default="FALSE", dest="logCPM",
+ help="logCPm in the summary table [default= %default]", metavar="logical"),
+ make_option("--fdr", type="logical", default="TRUE", dest="FDR",
+ help="FDR in the summary table [default= %default]", metavar="logical"),
+ make_option("--lr", type="logical", default="FALSE", dest="LR",
+ help="LR in the summary table [default= %default]", metavar="logical"),
+ make_option(c("--sign"), type="logical", default="TRUE", dest="Sign",
+ help="Significance (1/0/-1) in the summary table [default= %default]", metavar="logical"),
+ make_option(c("--expr"), type="logical", default="TRUE", dest="Expression",
+ help="Significance expression in the summary table [default= %default]", metavar="logical"),
+ make_option(c("--mc"), type="logical", default="TRUE", dest="mean_counts",
+ help="Mean counts in the summary table [default= %default]", metavar="logical"),
+ make_option(c("--hm"), type="logical", default="TRUE", dest="heatmap",
+ help="generation of the expression heatmap [default= %default]", metavar="logical"),
+ make_option(c("--nh"), type="integer", default="50", dest="numhigh",
+ help="number of genes in the heatmap [default= %default]", metavar="integer")
+ )
+ opt_parser = OptionParser(option_list=option_list)
+ parameters = parse_args(opt_parser)
+
+ if(is.null(parameters$rm_sample) == FALSE ) {
+ str_replace_all(parameters$rm_sample, " ", "")
+ parameters$rm_sample<-strsplit2(parameters$rm_sample, ",")
+ }
+
+ if(is.null(parameters$select_sample) == FALSE ) {
+ str_replace_all(parameters$select_sample, " ", "")
+ parameters$select_sample<-strsplit2(parameters$select_sample, ",")
+ }
+
+ dir.create(parameters$out_dir)
+ return(parameters)
+}
diff -r 000000000000 -r ceef9bc6bbc7 AskoR_DE.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/AskoR_DE.R Thu Apr 12 05:23:45 2018 -0400
@@ -0,0 +1,44 @@
+askor_path<-Sys.getenv("ASKOR_PATH")
+source(paste0(askor_path,"/AskoR.R"))
+
+##############################################
+## Parameters ##
+##############################################
+
+parameters<-Asko_start()
+setwd(parameters$dir_path)
+# source("/home/flegeai/local/askoR/askoStart.R")
+#parameters$col_genes=1
+#parameters$col_counts=7
+# parameters$regex=FALSE
+#parameters$rm_sample=list("T0_4", "T1K_4", "T1A_4", "T2A_4", "T2K_4", "T3K_4", "T3A_4")
+# #parameters$select_sample=c("T0_4", "T1K_4", "T1A_4", "T2A_4", "T2K_4", "T3K_4", "T3A_4")
+# #parameters$rm_sample=list("_4")
+# parameters$organism = "Ap"
+# parameters$fileofcount = NULL
+# parameters$annotation_file = "annotation.txt"
+# parameters$sample_file = "Samples.txt"
+# parameters$contrast_file = "Contrasts.txt"
+# parameters$mk_context="manual"
+# parameters$glm="qlf"
+
+
+########################################
+## Loading the data from the samples ##+
+########################################
+
+data<-loadData(parameters)
+cat("Total number of genes : ", dim(data$dge$counts)[1], "\n")
+cat("Total number of samples : ", dim(data$dge$counts)[2], "\n")
+cat("summary of CPM by samples\n")
+summary(cpm(data$dge))
+pdf(parameters$output_pdf)
+asko_data<-asko3c(data)
+cat("Filtering genes with more than ", parameters$threshold_cpm, " CPM in ",parameters$replicate_cpm,"samples\n")
+asko_filt<-GEfilt(data$dge, parameters)
+cat("Total number of filtered genes : ", dim(asko_filt$counts)[1], "\n")
+asko_norm<-GEnorm(asko_filt,parameters)
+GEcorr(asko_norm,parameters)
+cat("Statistical analysis\n")
+DEanalysis(asko_norm,data, asko_data,parameters)
+dev.off()
diff -r 000000000000 -r ceef9bc6bbc7 askor_de.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/askor_de.xml Thu Apr 12 05:23:45 2018 -0400
@@ -0,0 +1,165 @@
+
+ EdgeR for AskOmics
+
+ bioconductor-limma
+ r-statmod
+ bioconductor-edger
+ r-ggplot2
+ r-rcolorbrewer
+ r-ggrepel
+ r-gplots
+ r-optparse
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -r 000000000000 -r ceef9bc6bbc7 test-data/AskoAvsK.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/AskoAvsK.txt Thu Apr 12 05:23:45 2018 -0400
@@ -0,0 +1,176 @@
+Test_id measured_in@Contrast is@gene logFC FC PValue Expression Significance FDR A/T0A A/T1A A/T2A A/T3A K/T1K K/T2K K/T3K
+AvsK_GL350151_32884 AvsK GL350151_32884 -1.4658015841445 2.76216898522126 0.00264391592225013 A=K 0 0.115671321598443 21.9770142082978 4.60243759106838 7.06858703220598 6.83597436231163 24.7243951164809 18.050368601277 19.5984932428693
+AvsK_GL350151_32898 AvsK GL350151_32898 -1.47172576071689 2.77353467197652 0.00240957402121667 A=K 0 0.115671321598443 22.8405187946568 4.60243759106838 7.06858703220598 7.18922297617649 25.6087427706126 18.2429383304036 20.3505714255447
+AvsK_GL350151_32906 AvsK GL350151_32906 -1.47172576071689 2.77353467197652 0.00240957402121667 A=K 0 0.115671321598443 22.8405187946568 4.60243759106838 7.06858703220598 7.18922297617649 25.6087427706126 18.2429383304036 20.3505714255447
+AvsK_GL351656_44862 AvsK GL351656_44862 -1.47172576071689 2.77353467197652 0.00240957402121667 A=K 0 0.115671321598443 22.8405187946568 4.60243759106838 7.06858703220598 7.18922297617649 25.6087427706126 18.2429383304036 20.3505714255447
+AvsK_GL349642_4945 AvsK GL349642_4945 -0.869495926967361 1.82702443243324 0.0200438004479275 A=K 0 0.157995720064168 417.507843046818 116.896489669693 101.61231882496 75.4079099203981 328.413968129475 202.836868768343 186.903274026939
+AvsK_GL349642_4959 AvsK GL349642_4959 -0.869495926967361 1.82702443243324 0.0200438004479275 A=K 0 0.157995720064168 417.507843046818 116.896489669693 101.61231882496 75.4079099203981 328.413968129475 202.836868768343 186.903274026939
+AvsK_GL349642_4961 AvsK GL349642_4961 -0.855495896450042 1.80938058523392 0.0222654184608194 A=K 0 0.157995720064168 82.6553684877643 26.2552964125283 20.5220334361146 16.7156895246482 69.0764764157016 45.5079252688433 35.4402876558247
+AvsK_GL349642_4963 AvsK GL349642_4963 -0.869495926967361 1.82702443243324 0.0200438004479275 A=K 0 0.157995720064168 417.507843046818 116.896489669693 101.61231882496 75.4079099203981 328.413968129475 202.836868768343 186.903274026939
+AvsK_GL349643_5190 AvsK GL349643_5190 -1.16487635288432 2.24213998375816 0.0150785191695021 A=K 0 0.157995720064168 14.4449688927881 2.73632941954876 4.84406512480566 2.93603778210461 11.030329473906 7.56335986023563 10.5777541213807
+AvsK_GL349773_18697 AvsK GL349773_18697 -0.91546742240643 1.8861800810935 0.00725049539559815 A=K 0 0.157995720064168 24.1677107608458 13.3933664191246 17.0744059570634 13.8406685924913 23.7616433874445 27.0937814638994 32.1556867228994
+AvsK_GL349919_26520 AvsK GL349919_26520 -0.566471255216122 1.48089695284404 0.0184409026827921 A=K 0 0.157995720064168 124.499541153818 72.073883410293 70.3745660356144 56.6307559204322 116.176752645774 101.682183109349 94.7831139445446
+AvsK_GL349919_26570 AvsK GL349919_26570 -0.978323108293458 1.97017407972835 0.0148075561063123 A=K 0 0.157995720064168 103.917583708274 25.4501089849405 33.7588466169947 25.8020894426586 87.6001270254807 60.8751850112748 61.0103250089133
+AvsK_GL349919_26592 AvsK GL349919_26592 -1.19391878774136 2.28773316159769 0.017590782384399 A=K 0 0.157995720064168 29.3005113304337 6.67628355694396 7.31005430057552 8.81996932074199 25.3243219280574 21.114150881836 17.8078415758978
+AvsK_GL350151_32862 AvsK GL350151_32862 -0.95030830628354 1.93228554630381 0.00918521700631609 A=K 0 0.157995720064168 86.6918238501263 29.3696377720969 38.7976244676746 37.8104530962714 86.6672382227376 68.4955728606815 74.3338430597042
+AvsK_GL350151_32866 AvsK GL350151_32866 -0.972137634108357 1.96174515089933 0.00840324818023401 A=K 0 0.157995720064168 88.4737434506241 29.8894059094906 39.1623257237904 36.5707413609292 88.817436670779 69.6964707324995 75.846823875837
+AvsK_GL350151_32870 AvsK GL350151_32870 -1.23554484577466 2.35470257954074 0.0166687645011988 A=K 0 0.157995720064168 16.8331341845551 6.52577459753034 5.93033577721228 5.24487769901275 20.259888596177 15.0244479823509 14.3399933936587
+AvsK_GL350151_32910 AvsK GL350151_32910 -0.76110888328131 1.69479277470218 0.020185294413965 A=K 0 0.157995720064168 44.4056094917639 17.7366251545205 17.080222226584 16.931834363319 42.92724866839 26.2029181411405 30.2786942250802
+AvsK_GL350677_40695 AvsK GL350677_40695 -1.07846439322121 2.11178709505199 0.0170477425943072 A=K 0 0.157995720064168 15.6623504934394 5.6136940181826 2.62846685096616 36.5569250229901 13.8990465055077 13.43609533459 28.7218830421912
+AvsK_GL350737_41242 AvsK GL350737_41242 -0.76110888328131 1.69479277470218 0.020185294413965 A=K 0 0.157995720064168 44.4056094917639 17.7366251545205 17.080222226584 16.931834363319 42.92724866839 26.2029181411405 30.2786942250802
+AvsK_api-mir-275 AvsK api-mir-275 -0.55552745696114 1.46970586732711 0.0203446732333438 A=K 0 0.157995720064168 52.2616666690044 53.5416861018258 62.3873151783632 79.6933860995436 80.9148205341786 77.4611637185932 91.7767434094739
+AvsK_api-mir-92a-1 AvsK api-mir-92a-1 0.519477245413217 1.43343575438075 0.00892023878793979 A=K 0 0.157995720064168 108.083086611924 72.386227867033 35.5759781605864 48.1482263354263 54.1490720179198 38.8155292844677 26.3589562104737
+AvsK_api-mir-92a-2 AvsK api-mir-92a-2 0.519477245413217 1.43343575438075 0.00892023878793979 A=K 0 0.157995720064168 108.083086611924 72.386227867033 35.5759781605864 48.1482263354263 54.1490720179198 38.8155292844677 26.3589562104737
+AvsK_api-mir-92b-1 AvsK api-mir-92b-1 0.327143317609827 1.25452682327305 0.022570817152024 A=K 0 0.157995720064168 646.587652568849 387.715661705752 262.91725714257 262.908245111049 354.519703647672 251.764612041121 207.91780881254
+AvsK_api-mir-92b-2 AvsK api-mir-92b-2 0.327143317609827 1.25452682327305 0.022570817152024 A=K 0 0.157995720064168 646.587652568849 387.715661705752 262.91725714257 262.908245111049 354.519703647672 251.764612041121 207.91780881254
+AvsK_api-mir-998 AvsK api-mir-998 0.32311993473393 1.251033077201 0.0100851188227526 A=K 0 0.157995720064168 38278.9942265222 35311.3030595825 30986.3919268286 21786.1004139231 28527.9229897474 24896.0299871605 18462.0565100878
+AvsK_GL349645_5442 AvsK GL349645_5442 -1.02553842305478 2.03571898585211 0.02534836867631 A=K 0 0.170614019936702 44.1680656848992 14.8582519250457 20.0117081622308 11.4702018770868 52.996163581116 28.1047432038348 30.7768002051677
+AvsK_GL349643_5180 AvsK GL349643_5180 -1.03255341614949 2.04564161649168 0.0274729682106003 A=K 0 0.171706051316252 18.2794684848547 4.54212254256334 4.2586247302231 7.51702373646826 17.4668387068677 9.25604252110125 13.0330828136287
+AvsK_GL350151_32890 AvsK GL350151_32890 -0.734700144576176 1.66405157044037 0.0265583449098252 A=K 0 0.171706051316252 42.7373848463161 17.5104113748143 16.8987752295306 15.6921226279769 42.2838873109649 24.3082253888476 28.6046500540431
+AvsK_GL350682_40710 AvsK GL350682_40710 -1.53133743857502 2.89053679772646 0.0290640351434353 A=K 0 0.175386418969006 15.1093792744665 11.8785246839619 7.32689713115084 27.7305619312629 57.6693961245775 40.6813728356422 21.0452972577002
+AvsK_GL349630_2419 AvsK GL349630_2419 -0.866970295796059 1.82382877913966 0.040101818268561 A=K 0 0.190420295090555 136.310568242081 40.7692899051509 42.5215455530646 35.269884994448 112.352482308845 77.1738957792082 79.50838830007
+AvsK_GL349630_2421 AvsK GL349630_2421 -0.866970295796059 1.82382877913966 0.040101818268561 A=K 0 0.190420295090555 136.310568242081 40.7692899051509 42.5215455530646 35.269884994448 112.352482308845 77.1738957792082 79.50838830007
+AvsK_GL349630_2423 AvsK GL349630_2423 -0.866970295796059 1.82382877913966 0.040101818268561 A=K 0 0.190420295090555 136.310568242081 40.7692899051509 42.5215455530646 35.269884994448 112.352482308845 77.1738957792082 79.50838830007
+AvsK_GL349630_2425 AvsK GL349630_2425 -0.866970295796059 1.82382877913966 0.040101818268561 A=K 0 0.190420295090555 136.310568242081 40.7692899051509 42.5215455530646 35.269884994448 112.352482308845 77.1738957792082 79.50838830007
+AvsK_GL349643_5182 AvsK GL349643_5182 -1.02363083221662 2.03302905307662 0.03331923483892 A=K 0 0.190420295090555 15.5109406348709 4.31590876285712 4.05931469749039 7.14957329490986 16.8703162971331 7.7464892270617 12.2810046309533
+AvsK_GL349645_5448 AvsK GL349645_5448 -0.945917402225757 1.92641349305951 0.0413761576747052 A=K 0 0.190420295090555 55.9205425498732 20.234881500788 24.508282544732 18.9842698117411 66.9746615631992 37.1908093099749 40.21202386192
+AvsK_GL349645_5454 AvsK GL349645_5454 -0.945917402225757 1.92641349305951 0.0413761576747052 A=K 0 0.190420295090555 55.9205425498732 20.234881500788 24.508282544732 18.9842698117411 66.9746615631992 37.1908093099749 40.21202386192
+AvsK_GL349928_26838 AvsK GL349928_26838 0.405421956181056 1.32447623356273 0.0352415965685356 A=K 0 0.190420295090555 57.1825739794944 48.4496831345842 41.0100461864987 70.7967526721788 38.5345853531023 35.9090528426243 35.2403965134264
+AvsK_GL350151_32872 AvsK GL350151_32872 -0.759048851891149 1.69237449865509 0.0515484360132561 A=K 0 0.190420295090555 42.6696579688218 17.422074847417 19.9841236092326 15.827009404187 40.2506014278924 27.4418345048662 31.2732312084474
+AvsK_GL350757_41318 AvsK GL350757_41318 -0.313239137782639 1.24249421767493 0.0576701465131395 A=K 0 0.190420295090555 88.834921709588 154.093033384431 222.856316018568 393.268903324805 133.130797853428 210.398577789772 343.191284100736
+AvsK_GL350757_41320 AvsK GL350757_41320 -0.313239137782639 1.24249421767493 0.0576701465131395 A=K 0 0.190420295090555 88.834921709588 154.093033384431 222.856316018568 393.268903324805 133.130797853428 210.398577789772 343.191284100736
+AvsK_GL350757_41322 AvsK GL350757_41322 -0.313239137782639 1.24249421767493 0.0576701465131395 A=K 0 0.190420295090555 88.834921709588 154.093033384431 222.856316018568 393.268903324805 133.130797853428 210.398577789772 343.191284100736
+AvsK_GL350757_41324 AvsK GL350757_41324 -0.313239137782639 1.24249421767493 0.0576701465131395 A=K 0 0.190420295090555 88.834921709588 154.093033384431 222.856316018568 393.268903324805 133.130797853428 210.398577789772 343.191284100736
+AvsK_GL350757_41326 AvsK GL350757_41326 -0.313239137782639 1.24249421767493 0.0576701465131395 A=K 0 0.190420295090555 88.834921709588 154.093033384431 222.856316018568 393.268903324805 133.130797853428 210.398577789772 343.191284100736
+AvsK_GL350757_41328 AvsK GL350757_41328 -0.313239137782639 1.24249421767493 0.0576701465131395 A=K 0 0.190420295090555 88.834921709588 154.093033384431 222.856316018568 393.268903324805 133.130797853428 210.398577789772 343.191284100736
+AvsK_GL351656_44870 AvsK GL351656_44870 -0.984482458282678 1.97860339599751 0.0426766611460605 A=K 0 0.190420295090555 89.0228336648316 28.7778527542278 40.9262873559157 32.5183759583402 98.2409625950879 62.7420930233442 72.5999622861143
+AvsK_api-mir-3050 AvsK api-mir-3050 0.338947540813649 1.26483354971976 0.0535398557237755 A=K 0 0.190420295090555 1008034.59361181 1142501.70015826 1028755.47253531 916926.595884299 795661.911903157 850011.670784776 751409.556993584
+AvsK_api-mir-3055-1 AvsK api-mir-3055-1 -0.76956670779495 1.70475770777562 0.0493586086193674 A=K 0 0.190420295090555 48.45059536847 18.2112883523139 15.8225829508259 15.1430042282164 38.1421525702081 28.2579293430224 31.2811269968657
+AvsK_api-mir-3055-2 AvsK api-mir-3055-2 -0.76956670779495 1.70475770777562 0.0493586086193674 A=K 0 0.190420295090555 48.45059536847 18.2112883523139 15.8225829508259 15.1430042282164 38.1421525702081 28.2579293430224 31.2811269968657
+AvsK_api-mir-3055-3 AvsK api-mir-3055-3 -0.76956670779495 1.70475770777562 0.0493586086193674 A=K 0 0.190420295090555 48.45059536847 18.2112883523139 15.8225829508259 15.1430042282164 38.1421525702081 28.2579293430224 31.2811269968657
+AvsK_api-mir-3055-4 AvsK api-mir-3055-4 -0.76956670779495 1.70475770777562 0.0493586086193674 A=K 0 0.190420295090555 48.45059536847 18.2112883523139 15.8225829508259 15.1430042282164 38.1421525702081 28.2579293430224 31.2811269968657
+AvsK_api-mir-3055-5 AvsK api-mir-3055-5 -0.76956670779495 1.70475770777562 0.0493586086193674 A=K 0 0.190420295090555 48.45059536847 18.2112883523139 15.8225829508259 15.1430042282164 38.1421525702081 28.2579293430224 31.2811269968657
+AvsK_api-mir-315 AvsK api-mir-315 0.259678124236478 1.19721156820585 0.0539494460959103 A=K 0 0.190420295090555 26012.4718189252 20928.2550507448 16207.8874348461 16487.5486767109 16149.5398678988 15815.8285621859 14596.6450162269
+AvsK_api-mir-929 AvsK api-mir-929 -0.419107602695626 1.33710021864425 0.0399922347490484 A=K 0 0.190420295090555 13.4370060260247 45.7383427423633 73.3466164710049 101.485972258167 30.9159434838904 60.643677777599 91.6523519815252
+AvsK_GL349630_2427 AvsK GL349630_2427 -1.13664680977617 2.19869396429322 0.0695709773014429 A=K 0 0.202915350462542 15.8192358582501 3.31343434155413 3.09959689136328 4.34903223756405 13.0513763298296 7.70734865102163 9.49506070034405
+AvsK_GL349755_17087 AvsK GL349755_17087 -1.13664680977617 2.19869396429322 0.0695709773014429 A=K 0 0.202915350462542 15.8192358582501 3.31343434155413 3.09959689136328 4.34903223756405 13.0513763298296 7.70734865102163 9.49506070034405
+AvsK_GL349919_26542 AvsK GL349919_26542 -0.948133781084793 1.92937527180705 0.0655376113108678 A=K 0 0.202915350462542 88.0847020607618 24.4503049468148 31.0941949886553 24.5706679313819 89.0011005229108 54.6219198835019 49.0006387530009
+AvsK_GL349919_26564 AvsK GL349919_26564 -0.948133781084793 1.92937527180705 0.0655376113108678 A=K 0 0.202915350462542 88.0847020607618 24.4503049468148 31.0941949886553 24.5706679313819 89.0011005229108 54.6219198835019 49.0006387530009
+AvsK_GL349919_26580 AvsK GL349919_26580 -0.930836439246272 1.90638094872246 0.0677565291197627 A=K 0 0.202915350462542 87.6254945536924 24.4503049468148 30.8788291822523 24.5706679313819 88.2849331910451 53.9592224886412 47.7450326529346
+AvsK_GL349919_26590 AvsK GL349919_26590 -0.948133781084793 1.92937527180705 0.0655376113108678 A=K 0 0.202915350462542 88.0847020607618 24.4503049468148 31.0941949886553 24.5706679313819 89.0011005229108 54.6219198835019 49.0006387530009
+AvsK_GL357043_46322 AvsK GL357043_46322 -1.13664680977617 2.19869396429322 0.0695709773014429 A=K 0 0.202915350462542 15.8192358582501 3.31343434155413 3.09959689136328 4.34903223756405 13.0513763298296 7.70734865102163 9.49506070034405
+AvsK_GL349642_4949 AvsK GL349642_4949 -0.883497820271724 1.84484271244699 0.0888269359057653 A=K 0 0.218581203738317 20.0252950737267 6.08975436654529 6.23858283206665 3.20764118017084 16.9645086841215 8.91412436283476 9.42488676929855
+AvsK_GL349642_4967 AvsK GL349642_4967 -0.780296934926516 1.71748432844994 0.0861736180916879 A=K 0 0.218581203738317 29.2038965429374 6.64462795004153 11.5235597930116 8.01701510097147 25.6873101470662 11.5718209197646 17.9536113752922
+AvsK_GL349645_5438 AvsK GL349645_5438 -0.80667040217055 1.74916986915086 0.0790186764374745 A=K 0 0.218581203738317 38.564470100365 14.9720786249046 18.4934008532823 15.3559366296003 42.2540174631687 25.5330639918778 28.0680503325604
+AvsK_GL349645_5440 AvsK GL349645_5440 -0.80667040217055 1.74916986915086 0.0790186764374745 A=K 0 0.218581203738317 38.564470100365 14.9720786249046 18.4934008532823 15.3559366296003 42.2540174631687 25.5330639918778 28.0680503325604
+AvsK_GL349645_5452 AvsK GL349645_5452 -0.80667040217055 1.74916986915086 0.0790186764374745 A=K 0 0.218581203738317 38.564470100365 14.9720786249046 18.4934008532823 15.3559366296003 42.2540174631687 25.5330639918778 28.0680503325604
+AvsK_GL350151_32913 AvsK GL350151_32913 -0.963286524708182 1.94974645037494 0.0924286232950597 A=K 0 0.218581203738317 19.9787457765136 4.66115555795739 5.18080920298251 4.03543330496582 16.0514731430306 10.510631192699 9.53762648250707
+AvsK_GL350151_32915 AvsK GL350151_32915 -0.963286524708182 1.94974645037494 0.0924286232950597 A=K 0 0.218581203738317 19.9787457765136 4.66115555795739 5.18080920298251 4.03543330496582 16.0514731430306 10.510631192699 9.53762648250707
+AvsK_GL350737_41243 AvsK GL350737_41243 -0.963286524708182 1.94974645037494 0.0924286232950597 A=K 0 0.218581203738317 19.9787457765136 4.66115555795739 5.18080920298251 4.03543330496582 16.0514731430306 10.510631192699 9.53762648250707
+AvsK_GL366836_47437 AvsK GL366836_47437 -0.780296934926516 1.71748432844994 0.0861736180916879 A=K 0 0.218581203738317 29.2038965429374 6.64462795004153 11.5235597930116 8.01701510097147 25.6873101470662 11.5718209197646 17.9536113752922
+AvsK_GL366836_47443 AvsK GL366836_47443 -0.883497820271724 1.84484271244699 0.0888269359057653 A=K 0 0.218581203738317 20.0252950737267 6.08975436654529 6.23858283206665 3.20764118017084 16.9645086841215 8.91412436283476 9.42488676929855
+AvsK_GL366836_47447 AvsK GL366836_47447 -0.780296934926516 1.71748432844994 0.0861736180916879 A=K 0 0.218581203738317 29.2038965429374 6.64462795004153 11.5235597930116 8.01701510097147 25.6873101470662 11.5718209197646 17.9536113752922
+AvsK_GL369698_47842 AvsK GL369698_47842 -0.963286524708182 1.94974645037494 0.0924286232950597 A=K 0 0.218581203738317 19.9787457765136 4.66115555795739 5.18080920298251 4.03543330496582 16.0514731430306 10.510631192699 9.53762648250707
+AvsK_GL369698_47844 AvsK GL369698_47844 -0.963286524708182 1.94974645037494 0.0924286232950597 A=K 0 0.218581203738317 19.9787457765136 4.66115555795739 5.18080920298251 4.03543330496582 16.0514731430306 10.510631192699 9.53762648250707
+AvsK_api-mir-2a AvsK api-mir-2a 0.244246884357991 1.18447429027606 0.0814921018673601 A=K 0 0.218581203738317 1237.86970894262 1126.12814528614 804.844874667114 761.495872548766 834.523638972188 772.441552001314 653.246504965646
+AvsK_GL349642_4947 AvsK GL349642_4947 -0.69452380607739 1.61835017208076 0.108923258870868 A=K 0 0.244379106441051 39.3124972024574 10.8735388983366 8.98727321466557 5.8584836850643 23.3733601863652 13.5611421639255 16.4540340378624
+AvsK_GL349642_4951 AvsK GL349642_4951 -0.69452380607739 1.61835017208076 0.108923258870868 A=K 0 0.244379106441051 39.3124972024574 10.8735388983366 8.98727321466557 5.8584836850643 23.3733601863652 13.5611421639255 16.4540340378624
+AvsK_GL349642_4955 AvsK GL349642_4955 -0.69452380607739 1.61835017208076 0.108923258870868 A=K 0 0.244379106441051 39.3124972024574 10.8735388983366 8.98727321466557 5.8584836850643 23.3733601863652 13.5611421639255 16.4540340378624
+AvsK_GL349642_4965 AvsK GL349642_4965 -0.69452380607739 1.61835017208076 0.108923258870868 A=K 0 0.244379106441051 39.3124972024574 10.8735388983366 8.98727321466557 5.8584836850643 23.3733601863652 13.5611421639255 16.4540340378624
+AvsK_GL350222_34242 AvsK GL350222_34242 -0.222435630109119 1.16670160890204 0.111814627572844 A=K 0 0.245396454502298 184.233673314165 207.385266113065 271.536440873514 415.758698351785 204.094293618538 267.557984759917 379.217664985525
+AvsK_api-mir-279a AvsK api-mir-279a 0.171450075914869 1.12618986749895 0.112181236343908 A=K 0 0.245396454502298 2099.23183214755 1807.69888237487 1441.70044089313 1466.25833097388 1417.07904547563 1432.98876412673 1313.81148103838
+AvsK_api-mir-14 AvsK api-mir-14 -0.298512763801427 1.22987591304272 0.114960610620616 A=K 0 0.248371689612441 2917.70387383031 5174.26337501864 9057.45291271703 13256.972674329 4324.71028742041 8316.36967033474 12085.9720432948
+AvsK_api-mir-184a AvsK api-mir-184a 0.251497691087977 1.1904422961375 0.12225323013276 A=K 0 0.257762834617265 47761.3653273075 48955.440785817 45671.9115346193 39342.9489265658 35866.6670300699 39494.8236524716 34214.3320746442
+AvsK_api-mir-2b AvsK api-mir-2b 0.225420871910361 1.16911826121969 0.121848860509638 A=K 0 0.257762834617265 656.429261956676 532.896316982273 425.755249577495 340.457854167264 446.401152061298 389.33468630738 297.438390570694
+AvsK_GL350137_32551 AvsK GL350137_32551 -0.817174699360205 1.76195209428952 0.151132891000239 A=K 0 0.314860189583832 358.835578453794 204.143997030395 103.57230467644 1055.67910447161 578.995678143302 306.013099511433 651.127036770846
+AvsK_api-mir-10 AvsK api-mir-10 0.35354181779764 1.27769351901266 0.162793543052963 A=K 0 0.335163176873748 1290939.44087786 1609762.52422668 1918869.3641413 1257149.65869997 1080955.87403039 1356676.37011057 1070417.42103483
+AvsK_GL349642_4954 AvsK GL349642_4954 -0.576379559412874 1.49110263019043 0.189062646984535 A=K 0 0.344645450232224 246.107640893668 65.6308127111902 59.8801426597752 37.1058834648804 161.027468412219 97.8750108681155 72.356671417997
+AvsK_GL349642_4958 AvsK GL349642_4958 -0.576379559412874 1.49110263019043 0.189062646984535 A=K 0 0.344645450232224 246.107640893668 65.6308127111902 59.8801426597752 37.1058834648804 161.027468412219 97.8750108681155 72.356671417997
+AvsK_GL349642_4972 AvsK GL349642_4972 -0.576379559412874 1.49110263019043 0.189062646984535 A=K 0 0.344645450232224 246.107640893668 65.6308127111902 59.8801426597752 37.1058834648804 161.027468412219 97.8750108681155 72.356671417997
+AvsK_GL349642_4974 AvsK GL349642_4974 -0.600846115023604 1.51660576808712 0.171590830876087 A=K 0 0.344645450232224 205.408442483027 53.3370100028057 49.4883060495524 30.2557072748753 132.896009310663 84.7014662816012 59.1249161353572
+AvsK_GL349642_4976 AvsK GL349642_4976 -0.576379559412874 1.49110263019043 0.189062646984535 A=K 0 0.344645450232224 246.107640893668 65.6308127111902 59.8801426597752 37.1058834648804 161.027468412219 97.8750108681155 72.356671417997
+AvsK_GL349642_4980 AvsK GL349642_4980 -0.576379559412874 1.49110263019043 0.189062646984535 A=K 0 0.344645450232224 246.107640893668 65.6308127111902 59.8801426597752 37.1058834648804 161.027468412219 97.8750108681155 72.356671417997
+AvsK_GL349642_4982 AvsK GL349642_4982 -0.600846115023604 1.51660576808712 0.171590830876087 A=K 0 0.344645450232224 205.408442483027 53.3370100028057 49.4883060495524 30.2557072748753 132.896009310663 84.7014662816012 59.1249161353572
+AvsK_GL350137_32552 AvsK GL350137_32552 -0.758748139031432 1.69202177980226 0.183760949329893 A=K 0 0.344645450232224 186.851752515656 116.544493511701 51.6643780671411 603.928370599133 279.125976791414 148.931866740123 385.264784930101
+AvsK_api-mir-1000 AvsK api-mir-1000 -0.254241538584213 1.19270854101299 0.182999776850393 A=K 0 0.344645450232224 28.0436223189252 53.3343119331074 69.9973296535426 89.7548030603445 54.472321032134 58.6612204191131 68.3455716205887
+AvsK_api-mir-281 AvsK api-mir-281 -0.377936026307905 1.29948143803292 0.17574386455373 A=K 0 0.344645450232224 7.88595712039629 17.9980028180635 15.9702722689774 29.2202204933452 14.6499713109873 18.8509516140144 26.227349363353
+AvsK_api-mir-316 AvsK api-mir-316 -0.329250474379765 1.2563604860021 0.187765073722082 A=K 0 0.344645450232224 18.1123394158094 29.2940452013454 47.3316760732136 125.056047511994 14.9534399843751 57.1450820793195 124.919562699992
+AvsK_GL349642_4978 AvsK GL349642_4978 -0.572927949725895 1.4875394707097 0.19337199498525 A=K 0 0.345307133902233 227.32014241689 60.807187993068 56.6716087462903 34.9721899539977 150.137655781385 89.942765942774 68.1951554129839
+AvsK_GL350343_36481 AvsK GL350343_36481 -0.305478995073783 1.2358288816149 0.193142896003188 A=K 0 0.345307133902233 18.2496028315714 21.1875817224896 25.0627364783323 27.2053482450709 18.2147172220669 30.1075528576254 26.9231640808389
+AvsK_api-mir-3024 AvsK api-mir-3024 0.347887907301935 1.2726960471035 0.198033119935062 A=K 0 0.350058545339756 64.7212050546698 32.9381588675413 9.39844720626758 8.02540033905625 31.2093737502546 12.6426867572395 7.07502981122417
+AvsK_GL349642_4969 AvsK GL349642_4969 -0.701302983957749 1.6259726426549 0.213291527043306 A=K 0 0.352132238043194 18.17295099915 6.55800972940896 6.25463860573694 4.21353551280525 16.178928282704 7.5423138852036 9.00493626165608
+AvsK_GL366836_47439 AvsK GL366836_47439 -0.701302983957749 1.6259726426549 0.213291527043306 A=K 0 0.352132238043194 18.17295099915 6.55800972940896 6.25463860573694 4.21353551280525 16.178928282704 7.5423138852036 9.00493626165608
+AvsK_GL366836_47441 AvsK GL366836_47441 -0.701302983957749 1.6259726426549 0.213291527043306 A=K 0 0.352132238043194 18.17295099915 6.55800972940896 6.25463860573694 4.21353551280525 16.178928282704 7.5423138852036 9.00493626165608
+AvsK_GL366836_47445 AvsK GL366836_47445 -0.701302983957749 1.6259726426549 0.213291527043306 A=K 0 0.352132238043194 18.17295099915 6.55800972940896 6.25463860573694 4.21353551280525 16.178928282704 7.5423138852036 9.00493626165608
+AvsK_api-mir-184b AvsK api-mir-184b 0.211188382954381 1.15764136859004 0.204484535086433 A=K 0 0.352132238043194 42422.936024093 43427.1191642789 43217.5106675602 38253.4296067415 32911.4007978194 37731.0909485906 33291.3687056082
+AvsK_api-mir-981 AvsK api-mir-981 -0.432791091872966 1.34984250826862 0.208577067337162 A=K 0 0.352132238043194 5.20564097843226 15.6864006352302 24.0573219619243 44.5497121674858 15.4284020425891 23.8163580683543 33.334564034211
+AvsK_api-mir-996 AvsK api-mir-996 0.399049570932446 1.31863892208413 0.206805332408347 A=K 0 0.352132238043194 19.6205244782686 30.9540188931113 18.3716222128667 35.8201604539652 16.9072732178458 16.5090926445355 18.3619604108878
+AvsK_api-mir-1 AvsK api-mir-1 -0.373109102097403 1.29514093864492 0.217610315215638 A=K 0 0.355904721147071 121.181311601949 180.619849632683 381.774966277306 969.852875150488 163.746504291107 371.099133673289 779.681636668599
+AvsK_GL349742_15837 AvsK GL349742_15837 0.13655853363861 1.0992797169702 0.253729596992341 A=K 0 0.409680535082097 14878.3230778168 16838.4837907878 16136.5808468847 13996.6649005037 12660.4383260529 13939.7518458743 13375.2383303713
+AvsK_api-mir-3041 AvsK api-mir-3041 0.231570376328204 1.17411227739198 0.25517244756542 A=K 0 0.409680535082097 73.6148441337726 83.1697934295355 107.017450811661 131.983013926229 68.7196716946604 73.5629952263426 79.1107833448953
+AvsK_api-mir-3040 AvsK api-mir-3040 0.207497791875826 1.15468376438028 0.272530230762966 A=K 0 0.433570821668355 353.320213891397 461.832106680395 577.80634143084 222.063372380967 318.572656659124 478.13260602389 178.099887387928
+AvsK_GL350468_38246 AvsK GL350468_38246 -0.207173812734596 1.15442449167002 0.281747011058611 A=K 0 0.441454333486251 359.851481093613 683.497118292956 796.136724378387 969.225183091721 521.57331291497 769.858616409501 874.858587733065
+AvsK_api-mir-306 AvsK api-mir-306 0.116905764005808 1.08440657372805 0.282530773431201 A=K 0 0.441454333486251 1749.8598153719 1764.58022199887 1475.95237679632 1417.92154979521 1478.63566622894 1378.31249240608 1247.90705079229
+AvsK_GL350223_34252 AvsK GL350223_34252 -0.574336860879955 1.48899288573688 0.288146757884747 A=K 0 0.446244979025051 24.5027562953933 21.0291469282923 5.41058465149451 65.84452495434 33.5756424868145 27.8738652634777 27.8361871133578
+AvsK_api-mir-971 AvsK api-mir-971 -0.503575644896129 1.41772296453995 0.313092966954952 A=K 0 0.480625168571199 7.66479456863866 10.1407187013823 15.9855065951018 26.2012536879141 19.7487913349406 16.6065473899439 20.9140657335452
+AvsK_api-mir-210 AvsK api-mir-210 -0.224061075312196 1.16801684060218 0.320793761255207 A=K 0 0.488164419301402 17.1867469323253 45.7488925668745 66.6050846850626 103.560190395523 20.0195697686999 60.1807998129075 100.886808834417
+AvsK_api-mir-278 AvsK api-mir-278 -0.292313872640869 1.22460278792491 0.33131240206041 A=K 0 0.499824744487688 41.1737470124825 41.6572236507995 29.6178571627359 206.220935699302 44.3288514195503 39.8880494365225 159.925339221773
+AvsK_api-mir-3033 AvsK api-mir-3033 0.114779199740262 1.08280931204303 0.334934442106041 A=K 0 0.500970319389377 394.957854143393 502.552807518651 427.20126064499 437.826293070804 332.193472624891 393.371130813313 390.472289903324
+AvsK_GL349714_13724 AvsK GL349714_13724 0.270318095626155 1.20607372205753 0.348675571112813 A=K 0 0.508485207872852 95.0933122960213 141.498061593658 106.753742722073 185.568725525142 121.364759158602 93.184513796073 79.4730721242501
+AvsK_GL349714_13726 AvsK GL349714_13726 0.270318095626155 1.20607372205753 0.348675571112813 A=K 0 0.508485207872852 95.0933122960213 141.498061593658 106.753742722073 185.568725525142 121.364759158602 93.184513796073 79.4730721242501
+AvsK_GL349714_13728 AvsK GL349714_13728 0.270318095626155 1.20607372205753 0.348675571112813 A=K 0 0.508485207872852 95.0933122960213 141.498061593658 106.753742722073 185.568725525142 121.364759158602 93.184513796073 79.4730721242501
+AvsK_GL349650_6642 AvsK GL349650_6642 -0.199706136217227 1.14846439947795 0.362451661445036 A=K 0 0.511524522200656 32.5102056770459 19.27700657408 23.5577779476556 24.9975281724528 23.4204958217444 25.688221758373 26.5564521650425
+AvsK_GL349650_6644 AvsK GL349650_6644 -0.188581266414256 1.13964245029786 0.361308660113376 A=K 0 0.511524522200656 33.2611396253693 19.8834806136117 23.7570879803883 25.8679257803284 23.6355150917009 25.688221758373 27.6801572136646
+AvsK_api-let-7 AvsK api-let-7 0.271612380387578 1.20715621226918 0.356736917170478 A=K 0 0.511524522200656 51.7676372940973 17.1052875628726 14.9263902951714 19.5237803396459 20.3697975474495 18.2778657962231 13.734569637666
+AvsK_api-mir-252a AvsK api-mir-252a 0.145814971015653 1.10635545134078 0.353976578995858 A=K 0 0.511524522200656 308.466786767609 489.114196700038 480.543592935641 518.123670187282 289.171809924299 396.625013068125 426.384481737201
+AvsK_api-mir-927 AvsK api-mir-927 -0.176218091602887 1.12991801089093 0.378393077736056 A=K 0 0.529750308830478 427.238639370503 1222.6871883341 1720.16476297276 1804.75779360019 742.960038441659 1394.20082468705 1595.08274094536
+AvsK_api-mir-87b AvsK api-mir-87b -0.160014736948433 1.11729855107813 0.386773329011127 A=K 0 0.537185179182121 101.984497224848 178.020931797068 227.212497056194 325.300062759627 136.169251352098 204.421850406862 271.314056139974
+AvsK_GL349872_24254 AvsK GL349872_24254 -0.102605276972697 1.07371066295288 0.399826724519185 A=K 0 0.543948515827701 607.144425415593 732.301073986264 736.088526679089 811.685059487353 610.570405139264 730.251807009881 806.854373834026
+AvsK_api-mir-13a AvsK api-mir-13a 0.174653615447131 1.12869337809718 0.400967763095848 A=K 0 0.543948515827701 3036.87928275295 2096.25066535355 1719.53052217228 1844.40254679346 2190.65508578226 1773.7552599596 1377.00003461932
+AvsK_api-mir-71 AvsK api-mir-71 0.16051253028105 1.11768413480754 0.399543296658842 A=K 0 0.543948515827701 104.833522367662 110.914522043777 80.0860394443051 125.390526012238 77.5719375098147 70.4597414922617 109.600883549361
+AvsK_api-mir-2765 AvsK api-mir-2765 0.112636502550198 1.08120231241967 0.408313653677951 A=K 0 0.549652995335703 632.646871861759 504.166562590324 512.975079380156 397.872642849255 501.98589724328 507.009610435658 311.752558670212
+AvsK_api-mir-87a AvsK api-mir-87a -0.127723133034995 1.09256804473185 0.414280711984363 A=K 0 0.55342843204018 183.898246585246 359.274465229513 364.170268143297 516.851261150385 241.568668415364 336.035634591802 466.042315390537
+AvsK_api-mir-8 AvsK api-mir-8 -0.10201233232155 1.07326946078385 0.425615400913699 A=K 0 0.564262842120434 5301.5246677413 6852.54595327988 7719.78126352141 11054.9021049299 6234.11314807414 7208.95715011336 9613.89880962787
+AvsK_api-mir-263b AvsK api-mir-263b 0.277153919082733 1.21180193895981 0.460846748665548 A=K 0 0.606377300875721 1300.31895317557 1251.71642775122 1893.61155692519 1263.56130933943 994.460582209598 1337.23450831487 941.81504739292
+AvsK_GL349826_21746 AvsK GL349826_21746 -0.147020243200542 1.10728012119555 0.473495333788695 A=K 0 0.618370771738967 16.4951684939482 36.9544600878111 51.7665621942847 82.8005535132122 24.0458636715105 39.7552622980635 65.5617745846914
+AvsK_api-mir-3031 AvsK api-mir-3031 -0.157766270056588 1.11555857687433 0.477655932779107 A=K 0 0.619183616565509 197.60145077256 167.696215387838 173.378004991112 250.17481596556 188.245374819867 186.623430921134 226.185192350445
+AvsK_api-mir-100 AvsK api-mir-100 0.260596354979938 1.19797379885881 0.485071532886362 A=K 0 0.624172928346422 74.0061751109488 36.6867961405426 21.1027075981608 28.055245268287 37.0363811562773 30.2097239192629 18.5840373238262
+AvsK_GL350343_36473 AvsK GL350343_36473 -0.138637037764634 1.10086460085829 0.523836101000358 A=K 0 0.669133705657391 192.03628664115 162.229342389252 164.839570604831 240.375717813547 175.96217279623 180.069135472355 214.434156237149
+AvsK_api-bantam AvsK api-bantam 0.0736129017868095 1.05234875477952 0.540216462820689 A=K 0 0.683379789358212 13169.3308517045 16321.2717378554 17078.3447005196 21043.2913115408 12158.7515688539 14944.9044554132 18774.6570869758
+AvsK_api-mir-263a AvsK api-mir-263a 0.186426712885025 1.13794175263431 0.546703831486569 A=K 0 0.683379789358212 87248.5987485016 114738.540121811 163679.522376229 127221.007352086 94800.7276519968 115147.562359967 98013.8880180784
+AvsK_api-mir-2c AvsK api-mir-2c 0.0885690187666396 1.06331497771543 0.544984430369553 A=K 0 0.683379789358212 90.5431058071145 49.1092218181985 58.4232368367937 47.2771548685714 66.1195303451075 48.5029841502638 39.3961546589067
+AvsK_GL350370_36909 AvsK GL350370_36909 0.0911789334559931 1.06524031399593 0.586047582653191 A=K 0 0.727364021023464 547.199142865752 656.82657433825 772.848538093928 787.105725283942 458.154802585589 683.318052615232 657.046222558543
+AvsK_GL349650_6636 AvsK GL349650_6636 0.0802430481179375 1.05719612940176 0.628840531912338 A=K 0 0.748619680848022 571.761575450836 687.359529366427 806.208552002674 826.018496937716 484.997109051297 718.499068558673 692.399281998023
+AvsK_GL349650_6638 AvsK GL349650_6638 0.0802430481179375 1.05719612940176 0.628840531912338 A=K 0 0.748619680848022 571.761575450836 687.359529366427 806.208552002674 826.018496937716 484.997109051297 718.499068558673 692.399281998023
+AvsK_GL349650_6640 AvsK GL349650_6640 0.0802430481179375 1.05719612940176 0.628840531912338 A=K 0 0.748619680848022 571.761575450836 687.359529366427 806.208552002674 826.018496937716 484.997109051297 718.499068558673 692.399281998023
+AvsK_GL349650_6646 AvsK GL349650_6646 0.0802430481179375 1.05719612940176 0.628840531912338 A=K 0 0.748619680848022 571.761575450836 687.359529366427 806.208552002674 826.018496937716 484.997109051297 718.499068558673 692.399281998023
+AvsK_GL355572_46131 AvsK GL355572_46131 0.0803242676485381 1.05725564814132 0.628504627422985 A=K 0 0.748619680848022 571.761575450836 687.359529366427 806.389998999727 826.018496937716 484.997109051297 718.499068558673 692.399281998023
+AvsK_api-mir-317 AvsK api-mir-317 -0.105717384395713 1.0760293162243 0.622215874512894 A=K 0 0.748619680848022 38.1499577028816 41.9865638867419 43.1237487603943 81.4021479991145 39.973195910454 44.9959227533424 61.5132597451309
+AvsK_api-mir-137 AvsK api-mir-137 -0.123423899108211 1.08931703632151 0.64119056519725 A=K 0 0.758164519658911 23.3256938026282 31.1024416700597 32.0583379127441 39.3403084508284 30.2080451857782 33.5626380393697 29.7395236165053
+AvsK_api-mir-190 AvsK api-mir-190 0.0806722835198438 1.05751071668825 0.655611014523643 A=K 0 0.76487951694425 231.485466971721 234.550188295047 231.694995089182 220.167833553487 221.766347279128 205.845854702742 171.864204370512
+AvsK_api-mir-279b AvsK api-mir-279b 0.0513716604797051 1.03624968306798 0.654652121960051 A=K 0 0.76487951694425 626.144650512871 615.057540608426 593.854328320924 671.272152658071 554.283861464607 552.982505836701 560.625523157426
+AvsK_api-mir-3047-1 AvsK api-mir-3047-1 0.151069456771096 1.11039229080738 0.670395813232308 A=K 0 0.766792596834339 345.919356459137 203.230252972802 183.833264399272 170.686973097782 205.085416847614 179.143594709771 159.095755942028
+AvsK_api-mir-3047-2 AvsK api-mir-3047-2 0.151069456771096 1.11039229080738 0.670395813232308 A=K 0 0.766792596834339 345.919356459137 203.230252972802 183.833264399272 170.686973097782 205.085416847614 179.143594709771 159.095755942028
+AvsK_api-mir-3049 AvsK api-mir-3049 -0.0923073047951378 1.06607379354737 0.667230414901589 A=K 0 0.766792596834339 30.8771272639274 94.7105661640103 109.554845586267 96.9128255037697 53.1156765046011 72.0853763631651 100.188228378663
+AvsK_api-mir-276 AvsK api-mir-276 -0.0528175051643496 1.03728871562034 0.690826797354128 A=K 0 0.779965738948209 32203.6878048661 44732.2556555246 49739.6581555238 63483.937709086 36053.6225796423 47461.596670029 56999.0730502219
+AvsK_api-mir-3018 AvsK api-mir-3018 0.102779148361924 1.0738400727099 0.689427311952142 A=K 0 0.779965738948209 12.9763124689112 25.0073508370315 30.3840920325039 46.7376754442553 8.62911781908716 31.7226039874993 35.7693923336448
+AvsK_api-mir-3032 AvsK api-mir-3032 -0.100105200009885 1.07185161813161 0.705438761882478 A=K 0 0.791357585445087 77.401034703635 31.6881532348652 23.4780389246877 15.7470662528429 36.4674445149938 32.8486087182833 22.7343341312668
+AvsK_api-mir-3027 AvsK api-mir-3027 0.0697520221921975 1.04953626845249 0.713779269627093 A=K 0 0.795613835571601 492.94034451663 404.312998546403 373.591616924324 451.239789489599 362.527824297402 382.300123100955 381.724605218335
+AvsK_api-mir-993 AvsK api-mir-993 0.0438223818466387 1.03084139840492 0.742855650107538 A=K 0 0.822783156764678 364.184068355389 517.095986431029 451.118742022456 402.660704268363 355.927103464731 417.649465514703 379.069596290388
+AvsK_api-mir-9b AvsK api-mir-9b 0.0385033971553266 1.02704784928473 0.783762109394139 A=K 0 0.862631252477826 376.361439667079 436.573003510837 398.350992944513 415.493971885812 335.799016629453 364.731785016796 391.941058078227
+AvsK_api-mir-34 AvsK api-mir-34 -0.047003921762674 1.03311719606348 0.799312897918059 A=K 0 0.874248482097877 33.78320785053 33.6733146899426 36.5841102943991 75.4315901355026 26.767434430309 37.427678364582 62.5278754461016
+AvsK_api-mir-3016 AvsK api-mir-3016 0.0708655877421499 1.05034668130115 0.826909647602724 A=K 0 0.898814834350787 31.184883216559 10.4497505123629 5.33918096274054 5.83303583149121 21.1433464017102 5.2451550522054 5.31862877995631
+AvsK_GL349801_20413 AvsK GL349801_20413 0.0435856177678198 1.03067223847775 0.862187240266329 A=K 0 0.912423580011872 18.9258171290887 19.7476856197604 15.6293738213989 18.2029055558623 14.9856656593161 15.2885918081573 16.7328814031433
+AvsK_api-mir-252b AvsK api-mir-252b -0.0432783324776981 1.03045273492187 0.872564637171943 A=K 0 0.912423580011872 70.3219832837863 80.5998452829956 87.3965220353206 133.122575098307 66.0945308776993 89.0590652091734 105.469416792266
+AvsK_api-mir-277 AvsK api-mir-277 0.0214744928271797 1.014996317245 0.886881773510312 A=K 0 0.912423580011872 74.0187227137694 95.8454418109413 101.094878069469 138.38081811116 59.950707904155 93.4734733070941 124.973319561987
+AvsK_api-mir-29 AvsK api-mir-29 0.0273401385118148 1.01913144489008 0.890832263031452 A=K 0 0.912423580011872 107.910313729097 105.245364266731 98.7017420713852 79.8792663335928 94.6171458451392 94.9590209808936 72.2709794245771
+AvsK_api-mir-3036-1 AvsK api-mir-3036-1 -0.0233521058686877 1.01631815654608 0.890603796414289 A=K 0 0.912423580011872 468.48378934247 355.864419414785 375.340801378356 389.66489521967 378.098568231729 371.431717521057 358.320995881957
+AvsK_api-mir-3036-2 AvsK api-mir-3036-2 -0.0233521058686877 1.01631815654608 0.890603796414289 A=K 0 0.912423580011872 468.48378934247 355.864419414785 375.340801378356 389.66489521967 378.098568231729 371.431717521057 358.320995881957
+AvsK_api-mir-3036-3 AvsK api-mir-3036-3 -0.0231499688035336 1.01617576943556 0.891568183897315 A=K 0 0.912423580011872 468.48378934247 356.02291302258 375.157547119293 389.66489521967 377.932084361907 371.431717521057 358.320995881957
+AvsK_api-mir-3036-4 AvsK api-mir-3036-4 -0.0231499688035336 1.01617576943556 0.891568183897315 A=K 0 0.912423580011872 468.48378934247 356.02291302258 375.157547119293 389.66489521967 377.932084361907 371.431717521057 358.320995881957
+AvsK_api-mir-3036-5 AvsK api-mir-3036-5 -0.0231499688035336 1.01617576943556 0.891568183897315 A=K 0 0.912423580011872 468.48378934247 356.02291302258 375.157547119293 389.66489521967 377.932084361907 371.431717521057 358.320995881957
+AvsK_api-mir-9a AvsK api-mir-9a -0.0283397691516339 1.01983783675679 0.848692896454689 A=K 0 0.912423580011872 841.300362032995 812.438450656032 879.112275743298 1109.15485486028 786.952021519981 819.629737700813 961.930573546304
+AvsK_api-mir-7 AvsK api-mir-7 -0.028830626121343 1.02018488146532 0.901282950260523 A=K 0 0.917003001718556 192.866444597218 181.345502480794 207.034028814017 198.912796525837 189.343819213867 173.186336148056 186.872702427546
+AvsK_api-mir-3043-1 AvsK api-mir-3043-1 -0.047426737362225 1.03342001964741 0.925825733899933 A=K 0 0.925825733899933 50.1296395288814 57.6997552376986 48.3999867820141 44.4558265605947 40.4424775820102 51.5082654013472 48.4219380775634
+AvsK_api-mir-3043-2 AvsK api-mir-3043-2 -0.047426737362225 1.03342001964741 0.925825733899933 A=K 0 0.925825733899933 50.1296395288814 57.6997552376986 48.3999867820141 44.4558265605947 40.4424775820102 51.5082654013472 48.4219380775634
+AvsK_api-mir-3043-3 AvsK api-mir-3043-3 -0.047426737362225 1.03342001964741 0.925825733899933 A=K 0 0.925825733899933 50.1296395288814 57.6997552376986 48.3999867820141 44.4558265605947 40.4424775820102 51.5082654013472 48.4219380775634
diff -r 000000000000 -r ceef9bc6bbc7 test-data/AskoT1AvsT1K.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/AskoT1AvsT1K.txt Thu Apr 12 05:23:45 2018 -0400
@@ -0,0 +1,176 @@
+Test_id measured_in@Contrast is@gene logFC FC PValue Expression Significance FDR T1A/T1A T1K/T1K
+T1AvsT1K_GL349642_4945 T1AvsT1K GL349642_4945 -1.51050082924554 2.84908927626456 0.0325406523649849 T1A=T1K 0 0.226146729807717 116.896489669693 328.413968129475
+T1AvsT1K_GL349642_4959 T1AvsT1K GL349642_4959 -1.51050082924554 2.84908927626456 0.0325406523649849 T1A=T1K 0 0.226146729807717 116.896489669693 328.413968129475
+T1AvsT1K_GL349642_4963 T1AvsT1K GL349642_4963 -1.51050082924554 2.84908927626456 0.0325406523649849 T1A=T1K 0 0.226146729807717 116.896489669693 328.413968129475
+T1AvsT1K_GL349642_4967 T1AvsT1K GL349642_4967 -1.97373986469 3.92785007847171 0.0258331015676455 T1A=T1K 0 0.226146729807717 6.64462795004153 25.6873101470662
+T1AvsT1K_GL349643_5180 T1AvsT1K GL349643_5180 -2.03033393204775 4.08499392267698 0.0235010575102647 T1A=T1K 0 0.226146729807717 4.54212254256334 17.4668387068677
+T1AvsT1K_GL349643_5182 T1AvsT1K GL349643_5182 -2.05332502278382 4.15061472722808 0.025644995276629 T1A=T1K 0 0.226146729807717 4.31590876285712 16.8703162971331
+T1AvsT1K_GL349643_5190 T1AvsT1K GL349643_5190 -2.10030669556043 4.28800531956913 0.0200142821918946 T1A=T1K 0 0.226146729807717 2.73632941954876 11.030329473906
+T1AvsT1K_GL349645_5442 T1AvsT1K GL349645_5442 -1.86137255910447 3.6335318668081 0.0328569344298816 T1A=T1K 0 0.226146729807717 14.8582519250457 52.996163581116
+T1AvsT1K_GL349919_26570 T1AvsT1K GL349919_26570 -1.82005151771302 3.53093807044136 0.0177844713678188 T1A=T1K 0 0.226146729807717 25.4501089849405 87.6001270254807
+T1AvsT1K_GL349919_26592 T1AvsT1K GL349919_26592 -2.04867364035024 4.1372543101038 0.0335989427142894 T1A=T1K 0 0.226146729807717 6.67628355694396 25.3243219280574
+T1AvsT1K_GL350151_32862 T1AvsT1K GL350151_32862 -1.60518545010683 3.0423485576661 0.0196696225009638 T1A=T1K 0 0.226146729807717 29.3696377720969 86.6672382227376
+T1AvsT1K_GL350151_32866 T1AvsT1K GL350151_32866 -1.61402230907525 3.06104087360107 0.02011994144567 T1A=T1K 0 0.226146729807717 29.8894059094906 88.817436670779
+T1AvsT1K_GL350151_32884 T1AvsT1K GL350151_32884 -2.49624962959045 5.64216802207781 0.00756439706040851 T1A=T1K 0 0.226146729807717 4.60243759106838 24.7243951164809
+T1AvsT1K_GL350151_32890 T1AvsT1K GL350151_32890 -1.35097712821537 2.55084834312908 0.0300022327131185 T1A=T1K 0 0.226146729807717 17.5104113748143 42.2838873109649
+T1AvsT1K_GL350151_32898 T1AvsT1K GL350151_32898 -2.54430493829757 5.83327034653207 0.00640778257543885 T1A=T1K 0 0.226146729807717 4.60243759106838 25.6087427706126
+T1AvsT1K_GL350151_32906 T1AvsT1K GL350151_32906 -2.54430493829757 5.83327034653207 0.00640778257543885 T1A=T1K 0 0.226146729807717 4.60243759106838 25.6087427706126
+T1AvsT1K_GL350151_32910 T1AvsT1K GL350151_32910 -1.35369228094108 2.55565356116857 0.0275501325768629 T1A=T1K 0 0.226146729807717 17.7366251545205 42.92724866839
+T1AvsT1K_GL350737_41242 T1AvsT1K GL350737_41242 -1.35369228094108 2.55565356116857 0.0275501325768629 T1A=T1K 0 0.226146729807717 17.7366251545205 42.92724866839
+T1AvsT1K_GL351656_44862 T1AvsT1K GL351656_44862 -2.54430493829757 5.83327034653207 0.00640778257543885 T1A=T1K 0 0.226146729807717 4.60243759106838 25.6087427706126
+T1AvsT1K_GL366836_47437 T1AvsT1K GL366836_47437 -1.97373986469 3.92785007847171 0.0258331015676455 T1A=T1K 0 0.226146729807717 6.64462795004153 25.6873101470662
+T1AvsT1K_GL366836_47447 T1AvsT1K GL366836_47447 -1.97373986469 3.92785007847171 0.0258331015676455 T1A=T1K 0 0.226146729807717 6.64462795004153 25.6873101470662
+T1AvsT1K_api-mir-210 T1AvsT1K api-mir-210 1.07892833969205 2.11246631948654 0.0166401855616645 T1A=T1K 0 0.226146729807717 45.7488925668745 20.0195697686999
+T1AvsT1K_api-mir-252a T1AvsT1K api-mir-252a 0.771658396805771 1.70723114052703 0.0131086796680285 T1A=T1K 0 0.226146729807717 489.114196700038 289.171809924299
+T1AvsT1K_api-mir-277 T1AvsT1K api-mir-277 0.66530286763414 1.58590116943775 0.0271266048425514 T1A=T1K 0 0.226146729807717 95.8454418109413 59.950707904155
+T1AvsT1K_api-mir-3018 T1AvsT1K api-mir-3018 1.46695527580135 2.76437871473862 0.00721009463641135 T1A=T1K 0 0.226146729807717 25.0073508370315 8.62911781908716
+T1AvsT1K_api-mir-3033 T1AvsT1K api-mir-3033 0.590231469947568 1.50548827270089 0.0118480303953249 T1A=T1K 0 0.226146729807717 502.552807518651 332.193472624891
+T1AvsT1K_api-mir-3049 T1AvsT1K api-mir-3049 0.885259979868827 1.84709744639616 0.0366479961472712 T1A=T1K 0 0.229049975920445 94.7105661640103 53.1156765046011
+T1AvsT1K_api-mir-993 T1AvsT1K api-mir-993 0.548062229485617 1.4621205144276 0.0355545728873468 T1A=T1K 0 0.229049975920445 517.095986431029 355.927103464731
+T1AvsT1K_GL349630_2419 T1AvsT1K GL349630_2419 -1.49476035124183 2.81817333938257 0.0615172803842476 T1A=T1K 0 0.231296705500048 40.7692899051509 112.352482308845
+T1AvsT1K_GL349630_2421 T1AvsT1K GL349630_2421 -1.49476035124183 2.81817333938257 0.0615172803842476 T1A=T1K 0 0.231296705500048 40.7692899051509 112.352482308845
+T1AvsT1K_GL349630_2423 T1AvsT1K GL349630_2423 -1.49476035124183 2.81817333938257 0.0615172803842476 T1A=T1K 0 0.231296705500048 40.7692899051509 112.352482308845
+T1AvsT1K_GL349630_2425 T1AvsT1K GL349630_2425 -1.49476035124183 2.81817333938257 0.0615172803842476 T1A=T1K 0 0.231296705500048 40.7692899051509 112.352482308845
+T1AvsT1K_GL349630_2427 T1AvsT1K GL349630_2427 -2.16541513820586 4.48595496837273 0.0735177899692301 T1A=T1K 0 0.231296705500048 3.31343434155413 13.0513763298296
+T1AvsT1K_GL349642_4947 T1AvsT1K GL349642_4947 -1.23593995097064 2.35534754095378 0.122917677780026 T1A=T1K 0 0.231296705500048 10.8735388983366 23.3733601863652
+T1AvsT1K_GL349642_4949 T1AvsT1K GL349642_4949 -1.63035664942331 3.09589523043133 0.0884603313800414 T1A=T1K 0 0.231296705500048 6.08975436654529 16.9645086841215
+T1AvsT1K_GL349642_4951 T1AvsT1K GL349642_4951 -1.23593995097064 2.35534754095378 0.122917677780026 T1A=T1K 0 0.231296705500048 10.8735388983366 23.3733601863652
+T1AvsT1K_GL349642_4954 T1AvsT1K GL349642_4954 -1.33431476298014 2.52155686905087 0.110903579806168 T1A=T1K 0 0.231296705500048 65.6308127111902 161.027468412219
+T1AvsT1K_GL349642_4955 T1AvsT1K GL349642_4955 -1.23593995097064 2.35534754095378 0.122917677780026 T1A=T1K 0 0.231296705500048 10.8735388983366 23.3733601863652
+T1AvsT1K_GL349642_4958 T1AvsT1K GL349642_4958 -1.33431476298014 2.52155686905087 0.110903579806168 T1A=T1K 0 0.231296705500048 65.6308127111902 161.027468412219
+T1AvsT1K_GL349642_4961 T1AvsT1K GL349642_4961 -1.42321928473895 2.68183278164377 0.0413841103723519 T1A=T1K 0 0.231296705500048 26.2552964125283 69.0764764157016
+T1AvsT1K_GL349642_4965 T1AvsT1K GL349642_4965 -1.23593995097064 2.35534754095378 0.122917677780026 T1A=T1K 0 0.231296705500048 10.8735388983366 23.3733601863652
+T1AvsT1K_GL349642_4972 T1AvsT1K GL349642_4972 -1.33431476298014 2.52155686905087 0.110903579806168 T1A=T1K 0 0.231296705500048 65.6308127111902 161.027468412219
+T1AvsT1K_GL349642_4974 T1AvsT1K GL349642_4974 -1.35764348199695 2.56266248632493 0.10494283327168 T1A=T1K 0 0.231296705500048 53.3370100028057 132.896009310663
+T1AvsT1K_GL349642_4976 T1AvsT1K GL349642_4976 -1.33431476298014 2.52155686905087 0.110903579806168 T1A=T1K 0 0.231296705500048 65.6308127111902 161.027468412219
+T1AvsT1K_GL349642_4978 T1AvsT1K GL349642_4978 -1.34474630664066 2.53985530028607 0.109696804426897 T1A=T1K 0 0.231296705500048 60.807187993068 150.137655781385
+T1AvsT1K_GL349642_4980 T1AvsT1K GL349642_4980 -1.33431476298014 2.52155686905087 0.110903579806168 T1A=T1K 0 0.231296705500048 65.6308127111902 161.027468412219
+T1AvsT1K_GL349642_4982 T1AvsT1K GL349642_4982 -1.35764348199695 2.56266248632493 0.10494283327168 T1A=T1K 0 0.231296705500048 53.3370100028057 132.896009310663
+T1AvsT1K_GL349645_5438 T1AvsT1K GL349645_5438 -1.54550599726022 2.91906431406472 0.0767362953308844 T1A=T1K 0 0.231296705500048 14.9720786249046 42.2540174631687
+T1AvsT1K_GL349645_5440 T1AvsT1K GL349645_5440 -1.54550599726022 2.91906431406472 0.0767362953308844 T1A=T1K 0 0.231296705500048 14.9720786249046 42.2540174631687
+T1AvsT1K_GL349645_5448 T1AvsT1K GL349645_5448 -1.75574713222178 3.37701159350507 0.0472151079231076 T1A=T1K 0 0.231296705500048 20.234881500788 66.9746615631992
+T1AvsT1K_GL349645_5452 T1AvsT1K GL349645_5452 -1.54550599726022 2.91906431406472 0.0767362953308844 T1A=T1K 0 0.231296705500048 14.9720786249046 42.2540174631687
+T1AvsT1K_GL349645_5454 T1AvsT1K GL349645_5454 -1.75574713222178 3.37701159350507 0.0472151079231076 T1A=T1K 0 0.231296705500048 20.234881500788 66.9746615631992
+T1AvsT1K_GL349650_6636 T1AvsT1K GL349650_6636 0.497833165795097 1.41209109979762 0.116069852418871 T1A=T1K 0 0.231296705500048 687.359529366427 484.997109051297
+T1AvsT1K_GL349650_6638 T1AvsT1K GL349650_6638 0.497833165795097 1.41209109979762 0.116069852418871 T1A=T1K 0 0.231296705500048 687.359529366427 484.997109051297
+T1AvsT1K_GL349650_6640 T1AvsT1K GL349650_6640 0.497833165795097 1.41209109979762 0.116069852418871 T1A=T1K 0 0.231296705500048 687.359529366427 484.997109051297
+T1AvsT1K_GL349650_6646 T1AvsT1K GL349650_6646 0.497833165795097 1.41209109979762 0.116069852418871 T1A=T1K 0 0.231296705500048 687.359529366427 484.997109051297
+T1AvsT1K_GL349742_15837 T1AvsT1K GL349742_15837 0.411244414495148 1.32983238294201 0.070181507649193 T1A=T1K 0 0.231296705500048 16838.4837907878 12660.4383260529
+T1AvsT1K_GL349755_17087 T1AvsT1K GL349755_17087 -2.16541513820586 4.48595496837273 0.0735177899692301 T1A=T1K 0 0.231296705500048 3.31343434155413 13.0513763298296
+T1AvsT1K_GL349773_18697 T1AvsT1K GL349773_18697 -0.968466218438465 1.95675918711029 0.113974718044555 T1A=T1K 0 0.231296705500048 13.3933664191246 23.7616433874445
+T1AvsT1K_GL349919_26520 T1AvsT1K GL349919_26520 -0.704438668191757 1.62951052243089 0.107905899082826 T1A=T1K 0 0.231296705500048 72.073883410293 116.176752645774
+T1AvsT1K_GL349919_26542 T1AvsT1K GL349919_26542 -1.89967113071637 3.73128130564866 0.0553127380658989 T1A=T1K 0 0.231296705500048 24.4503049468148 89.0011005229108
+T1AvsT1K_GL349919_26564 T1AvsT1K GL349919_26564 -1.89967113071637 3.73128130564866 0.0553127380658989 T1A=T1K 0 0.231296705500048 24.4503049468148 89.0011005229108
+T1AvsT1K_GL349919_26580 T1AvsT1K GL349919_26580 -1.88830973574709 3.70201242099229 0.0543571474967192 T1A=T1K 0 0.231296705500048 24.4503049468148 88.2849331910451
+T1AvsT1K_GL349919_26590 T1AvsT1K GL349919_26590 -1.89967113071637 3.73128130564866 0.0553127380658989 T1A=T1K 0 0.231296705500048 24.4503049468148 89.0011005229108
+T1AvsT1K_GL350151_32870 T1AvsT1K GL350151_32870 -1.71142129674047 3.27483290557102 0.070666140324755 T1A=T1K 0 0.231296705500048 6.52577459753034 20.259888596177
+T1AvsT1K_GL350151_32872 T1AvsT1K GL350151_32872 -1.29385258523086 2.45181918009994 0.0777523367711501 T1A=T1K 0 0.231296705500048 17.422074847417 40.2506014278924
+T1AvsT1K_GL350151_32913 T1AvsT1K GL350151_32913 -1.80016728732826 3.48260605445201 0.0927363069708863 T1A=T1K 0 0.231296705500048 4.66115555795739 16.0514731430306
+T1AvsT1K_GL350151_32915 T1AvsT1K GL350151_32915 -1.80016728732826 3.48260605445201 0.0927363069708863 T1A=T1K 0 0.231296705500048 4.66115555795739 16.0514731430306
+T1AvsT1K_GL350370_36909 T1AvsT1K GL350370_36909 0.513809574434009 1.42781550567439 0.10797209488329 T1A=T1K 0 0.231296705500048 656.82657433825 458.154802585589
+T1AvsT1K_GL350677_40695 T1AvsT1K GL350677_40695 -1.43317141992196 2.70039681026893 0.0901034620644428 T1A=T1K 0 0.231296705500048 5.6136940181826 13.8990465055077
+T1AvsT1K_GL350682_40710 T1AvsT1K GL350682_40710 -2.15046864545504 4.43971985387644 0.108767381438483 T1A=T1K 0 0.231296705500048 11.8785246839619 57.6693961245775
+T1AvsT1K_GL350737_41243 T1AvsT1K GL350737_41243 -1.80016728732826 3.48260605445201 0.0927363069708863 T1A=T1K 0 0.231296705500048 4.66115555795739 16.0514731430306
+T1AvsT1K_GL351656_44870 T1AvsT1K GL351656_44870 -1.81026708625766 3.50707208972786 0.0521068788795251 T1A=T1K 0 0.231296705500048 28.7778527542278 98.2409625950879
+T1AvsT1K_GL355572_46131 T1AvsT1K GL355572_46131 0.49783313065797 1.41209106540586 0.116079251254069 T1A=T1K 0 0.231296705500048 687.359529366427 484.997109051297
+T1AvsT1K_GL357043_46322 T1AvsT1K GL357043_46322 -2.16541513820586 4.48595496837273 0.0735177899692301 T1A=T1K 0 0.231296705500048 3.31343434155413 13.0513763298296
+T1AvsT1K_GL366836_47443 T1AvsT1K GL366836_47443 -1.63035664942331 3.09589523043133 0.0884603313800414 T1A=T1K 0 0.231296705500048 6.08975436654529 16.9645086841215
+T1AvsT1K_GL369698_47842 T1AvsT1K GL369698_47842 -1.80016728732826 3.48260605445201 0.0927363069708863 T1A=T1K 0 0.231296705500048 4.66115555795739 16.0514731430306
+T1AvsT1K_GL369698_47844 T1AvsT1K GL369698_47844 -1.80016728732826 3.48260605445201 0.0927363069708863 T1A=T1K 0 0.231296705500048 4.66115555795739 16.0514731430306
+T1AvsT1K_api-bantam T1AvsT1K api-bantam 0.424998755736059 1.34257134486831 0.0655686813955212 T1A=T1K 0 0.231296705500048 16321.2717378554 12158.7515688539
+T1AvsT1K_api-mir-279a T1AvsT1K api-mir-279a 0.351334886816963 1.27574048966057 0.0815425644557342 T1A=T1K 0 0.231296705500048 1807.69888237487 1417.07904547563
+T1AvsT1K_api-mir-2a T1AvsT1K api-mir-2a 0.437311522850856 1.35407863529223 0.092462956933114 T1A=T1K 0 0.231296705500048 1126.12814528614 834.523638972188
+T1AvsT1K_api-mir-3016 T1AvsT1K api-mir-3016 -1.02364303310583 2.03304624650033 0.0893446933132216 T1A=T1K 0 0.231296705500048 10.4497505123629 21.1433464017102
+T1AvsT1K_api-mir-3050 T1AvsT1K api-mir-3050 0.521983087561393 1.43592767741867 0.105153476136855 T1A=T1K 0 0.231296705500048 1142501.70015826 795661.911903157
+T1AvsT1K_api-mir-3055-1 T1AvsT1K api-mir-3055-1 -1.11623233737473 2.16780101691872 0.122735999369461 T1A=T1K 0 0.231296705500048 18.2112883523139 38.1421525702081
+T1AvsT1K_api-mir-3055-2 T1AvsT1K api-mir-3055-2 -1.11623233737473 2.16780101691872 0.122735999369461 T1A=T1K 0 0.231296705500048 18.2112883523139 38.1421525702081
+T1AvsT1K_api-mir-3055-3 T1AvsT1K api-mir-3055-3 -1.11623233737473 2.16780101691872 0.122735999369461 T1A=T1K 0 0.231296705500048 18.2112883523139 38.1421525702081
+T1AvsT1K_api-mir-3055-4 T1AvsT1K api-mir-3055-4 -1.11623233737473 2.16780101691872 0.122735999369461 T1A=T1K 0 0.231296705500048 18.2112883523139 38.1421525702081
+T1AvsT1K_api-mir-3055-5 T1AvsT1K api-mir-3055-5 -1.11623233737473 2.16780101691872 0.122735999369461 T1A=T1K 0 0.231296705500048 18.2112883523139 38.1421525702081
+T1AvsT1K_api-mir-316 T1AvsT1K api-mir-316 0.951214903067856 1.93350018581491 0.0534469540017206 T1A=T1K 0 0.231296705500048 29.2940452013454 14.9534399843751
+T1AvsT1K_api-mir-87a T1AvsT1K api-mir-87a 0.595075684837031 1.51055182813797 0.0499574684537706 T1A=T1K 0 0.231296705500048 359.274465229513 241.568668415364
+T1AvsT1K_api-mir-927 T1AvsT1K api-mir-927 0.720303478899567 1.64752856485343 0.0622009899327027 T1A=T1K 0 0.231296705500048 1222.6871883341 742.960038441659
+T1AvsT1K_api-mir-929 T1AvsT1K api-mir-929 0.586766004331637 1.50187631270286 0.121743465161997 T1A=T1K 0 0.231296705500048 45.7383427423633 30.9159434838904
+T1AvsT1K_api-mir-996 T1AvsT1K api-mir-996 0.927303324713245 1.90171799410889 0.116083317468116 T1A=T1K 0 0.231296705500048 30.9540188931113 16.9072732178458
+T1AvsT1K_api-mir-315 T1AvsT1K api-mir-315 0.374266854283351 1.29618069688973 0.129025414693314 T1A=T1K 0 0.240206889056702 20928.2550507448 16149.5398678988
+T1AvsT1K_api-mir-184a T1AvsT1K api-mir-184a 0.449003737181593 1.36509725405156 0.136775487455678 T1A=T1K 0 0.250429142868427 48955.440785817 35866.6670300699
+T1AvsT1K_api-mir-3040 T1AvsT1K api-mir-3040 0.526844003267613 1.4407739514075 0.137378272659252 T1A=T1K 0 0.250429142868427 461.832106680395 318.572656659124
+T1AvsT1K_GL349826_21746 T1AvsT1K GL349826_21746 0.582768141488699 1.49772021336045 0.140133693798645 T1A=T1K 0 0.251872093496074 36.9544600878111 24.0458636715105
+T1AvsT1K_api-mir-2c T1AvsT1K api-mir-2c -0.406676759257996 1.32562871539024 0.142487641463493 T1A=T1K 0 0.251872093496074 49.1092218181985 66.1195303451075
+T1AvsT1K_api-mir-9b T1AvsT1K api-mir-9b 0.392950256241558 1.31307585012194 0.142275696189531 T1A=T1K 0 0.251872093496074 436.573003510837 335.799016629453
+T1AvsT1K_GL349642_4969 T1AvsT1K GL349642_4969 -1.49514213376617 2.81891921545201 0.152512110771756 T1A=T1K 0 0.257952551789253 6.55800972940896 16.178928282704
+T1AvsT1K_GL366836_47439 T1AvsT1K GL366836_47439 -1.49514213376617 2.81891921545201 0.152512110771756 T1A=T1K 0 0.257952551789253 6.55800972940896 16.178928282704
+T1AvsT1K_GL366836_47441 T1AvsT1K GL366836_47441 -1.49514213376617 2.81891921545201 0.152512110771756 T1A=T1K 0 0.257952551789253 6.55800972940896 16.178928282704
+T1AvsT1K_GL366836_47445 T1AvsT1K GL366836_47445 -1.49514213376617 2.81891921545201 0.152512110771756 T1A=T1K 0 0.257952551789253 6.55800972940896 16.178928282704
+T1AvsT1K_api-mir-3043-1 T1AvsT1K api-mir-3043-1 0.508740050687805 1.4228070723011 0.157719560236857 T1A=T1K 0 0.257952551789253 57.6997552376986 40.4424775820102
+T1AvsT1K_api-mir-3043-2 T1AvsT1K api-mir-3043-2 0.508740050687805 1.4228070723011 0.157719560236857 T1A=T1K 0 0.257952551789253 57.6997552376986 40.4424775820102
+T1AvsT1K_api-mir-3043-3 T1AvsT1K api-mir-3043-3 0.508740050687805 1.4228070723011 0.157719560236857 T1A=T1K 0 0.257952551789253 57.6997552376986 40.4424775820102
+T1AvsT1K_api-mir-71 T1AvsT1K api-mir-71 0.512248297414581 1.4262711669984 0.155004135916791 T1A=T1K 0 0.257952551789253 110.914522043777 77.5719375098147
+T1AvsT1K_api-mir-998 T1AvsT1K api-mir-998 0.307846346959952 1.2378584467283 0.165301748749579 T1A=T1K 0 0.267850055844225 35311.3030595825 28527.9229897474
+T1AvsT1K_GL350137_32551 T1AvsT1K GL350137_32551 -1.48556094305621 2.80026030583413 0.173104045541299 T1A=T1K 0 0.27791933917181 204.143997030395 578.995678143302
+T1AvsT1K_api-mir-184b T1AvsT1K api-mir-184b 0.400186589358911 1.31967857889766 0.195983594794627 T1A=T1K 0 0.311792082627815 43427.1191642789 32911.4007978194
+T1AvsT1K_api-mir-306 T1AvsT1K api-mir-306 0.257397955103677 1.19532087843988 0.205380357103338 T1A=T1K 0 0.323797860298055 1764.58022199887 1478.63566622894
+T1AvsT1K_api-mir-276 T1AvsT1K api-mir-276 0.311354966929614 1.24087256981427 0.215100871481478 T1A=T1K 0 0.33609511168981 44732.2556555246 36053.6225796423
+T1AvsT1K_api-mir-10 T1AvsT1K api-mir-10 0.57454860954382 1.48921144571279 0.219566827241792 T1A=T1K 0 0.336716196969914 1609762.52422668 1080955.87403039
+T1AvsT1K_api-mir-92a-1 T1AvsT1K api-mir-92a-1 0.420513679344852 1.33840401592113 0.221270643723087 T1A=T1K 0 0.336716196969914 72.386227867033 54.1490720179198
+T1AvsT1K_api-mir-92a-2 T1AvsT1K api-mir-92a-2 0.420513679344852 1.33840401592113 0.221270643723087 T1A=T1K 0 0.336716196969914 72.386227867033 54.1490720179198
+T1AvsT1K_api-mir-87b T1AvsT1K api-mir-87b 0.417330099248798 1.33545383001126 0.233533965033266 T1A=T1K 0 0.352314171386393 178.020931797068 136.169251352098
+T1AvsT1K_api-mir-34 T1AvsT1K api-mir-34 0.413664958815808 1.3320654398123 0.239095482482801 T1A=T1K 0 0.357621448158036 33.6733146899426 26.767434430309
+T1AvsT1K_GL349872_24254 T1AvsT1K GL349872_24254 0.26580802408479 1.20230924988958 0.245895974243057 T1A=T1K 0 0.364676232987585 732.301073986264 610.570405139264
+T1AvsT1K_api-mir-275 T1AvsT1K api-mir-275 -0.502466168303267 1.41663311135617 0.248333218933857 T1A=T1K 0 0.365195910196848 53.5416861018258 80.9148205341786
+T1AvsT1K_GL349928_26838 T1AvsT1K GL349928_26838 0.398368230595902 1.31801631665353 0.252691639408594 T1A=T1K 0 0.3685086408042 48.4496831345842 38.5345853531023
+T1AvsT1K_GL350137_32552 T1AvsT1K GL350137_32552 -1.22471269108503 2.33708902565558 0.259667178176632 T1A=T1K 0 0.372473411318939 116.544493511701 279.125976791414
+T1AvsT1K_GL350468_38246 T1AvsT1K GL350468_38246 0.407728640758765 1.32659559525244 0.2592622601322 T1A=T1K 0 0.372473411318939 683.497118292956 521.57331291497
+T1AvsT1K_api-mir-2b T1AvsT1K api-mir-2b 0.262550179111588 1.19959729912042 0.324723486955096 T1A=T1K 0 0.462004961114974 532.896316982273 446.401152061298
+T1AvsT1K_GL349801_20413 T1AvsT1K GL349801_20413 0.451502682632779 1.36746383853809 0.355270554276646 T1A=T1K 0 0.501389895148492 19.7476856197604 14.9856656593161
+T1AvsT1K_api-mir-281 T1AvsT1K api-mir-281 0.476202790276553 1.39107749270099 0.363742343549682 T1A=T1K 0 0.509239280969554 17.9980028180635 14.6499713109873
+T1AvsT1K_GL350757_41318 T1AvsT1K GL350757_41318 0.246282640996919 1.18614685682722 0.41532759271975 T1A=T1K 0 0.55482693683936 154.093033384431 133.130797853428
+T1AvsT1K_GL350757_41320 T1AvsT1K GL350757_41320 0.246282640996919 1.18614685682722 0.41532759271975 T1A=T1K 0 0.55482693683936 154.093033384431 133.130797853428
+T1AvsT1K_GL350757_41322 T1AvsT1K GL350757_41322 0.246282640996919 1.18614685682722 0.41532759271975 T1A=T1K 0 0.55482693683936 154.093033384431 133.130797853428
+T1AvsT1K_GL350757_41324 T1AvsT1K GL350757_41324 0.246282640996919 1.18614685682722 0.41532759271975 T1A=T1K 0 0.55482693683936 154.093033384431 133.130797853428
+T1AvsT1K_GL350757_41326 T1AvsT1K GL350757_41326 0.246282640996919 1.18614685682722 0.41532759271975 T1A=T1K 0 0.55482693683936 154.093033384431 133.130797853428
+T1AvsT1K_GL350757_41328 T1AvsT1K GL350757_41328 0.246282640996919 1.18614685682722 0.41532759271975 T1A=T1K 0 0.55482693683936 154.093033384431 133.130797853428
+T1AvsT1K_api-mir-14 T1AvsT1K api-mir-14 0.2596082631212 1.19715359579451 0.455207762811824 T1A=T1K 0 0.603495140091434 5174.26337501864 4324.71028742041
+T1AvsT1K_api-mir-279b T1AvsT1K api-mir-279b 0.152154812957104 1.11122796609104 0.47830843605556 T1A=T1K 0 0.629353205336263 615.057540608426 554.283861464607
+T1AvsT1K_api-mir-252b T1AvsT1K api-mir-252b 0.356436208575587 1.28025945040909 0.482876581824342 T1A=T1K 0 0.630622401636268 80.5998452829956 66.0945308776993
+T1AvsT1K_GL349650_6642 T1AvsT1K GL349650_6642 -0.272750292181644 1.20810872067623 0.503308619702765 T1A=T1K 0 0.652437099614695 19.27700657408 23.4204958217444
+T1AvsT1K_api-mir-3041 T1AvsT1K api-mir-3041 0.24650120531014 1.18632656841183 0.511596497306279 T1A=T1K 0 0.658304316386756 83.1697934295355 68.7196716946604
+T1AvsT1K_GL349650_6644 T1AvsT1K GL349650_6644 -0.245638478191897 1.18561736091067 0.522084683127115 T1A=T1K 0 0.666896493045585 19.8834806136117 23.6355150917009
+T1AvsT1K_api-mir-981 T1AvsT1K api-mir-981 0.407076630077546 1.32599618993863 0.538448138572079 T1A=T1K 0 0.682814668479086 15.6864006352302 15.4284020425891
+T1AvsT1K_api-mir-8 T1AvsT1K api-mir-8 0.1376371586873 1.10010189626725 0.563380782843039 T1A=T1K 0 0.709292352500229 6852.54595327988 6234.11314807414
+T1AvsT1K_api-mir-92b-1 T1AvsT1K api-mir-92b-1 0.130695773754039 1.09482157752109 0.604474367738101 T1A=T1K 0 0.7502341443558 387.715661705752 354.519703647672
+T1AvsT1K_api-mir-92b-2 T1AvsT1K api-mir-92b-2 0.130695773754039 1.09482157752109 0.604474367738101 T1A=T1K 0 0.7502341443558 387.715661705752 354.519703647672
+T1AvsT1K_GL349714_13724 T1AvsT1K GL349714_13724 0.245777798982029 1.1857318612859 0.64316360023848 T1A=T1K 0 0.755393490212979 141.498061593658 121.364759158602
+T1AvsT1K_GL349714_13726 T1AvsT1K GL349714_13726 0.245777798982029 1.1857318612859 0.64316360023848 T1A=T1K 0 0.755393490212979 141.498061593658 121.364759158602
+T1AvsT1K_GL349714_13728 T1AvsT1K GL349714_13728 0.245777798982029 1.1857318612859 0.64316360023848 T1A=T1K 0 0.755393490212979 141.498061593658 121.364759158602
+T1AvsT1K_api-mir-263a T1AvsT1K api-mir-263a 0.275578066976019 1.21047901344396 0.631060987272467 T1A=T1K 0 0.755393490212979 114738.540121811 94800.7276519968
+T1AvsT1K_api-mir-263b T1AvsT1K api-mir-263b 0.34807841767474 1.27286411991236 0.617461696981064 T1A=T1K 0 0.755393490212979 1251.71642775122 994.460582209598
+T1AvsT1K_api-mir-3027 T1AvsT1K api-mir-3027 0.176613068481295 1.13022739892785 0.619137194777729 T1A=T1K 0 0.755393490212979 404.312998546403 362.527824297402
+T1AvsT1K_api-mir-3032 T1AvsT1K api-mir-3032 -0.233803916718824 1.17593141321262 0.631231406004784 T1A=T1K 0 0.755393490212979 31.6881532348652 36.4674445149938
+T1AvsT1K_api-mir-971 T1AvsT1K api-mir-971 -0.450938205848111 1.36692890178478 0.640543437571988 T1A=T1K 0 0.755393490212979 10.1407187013823 19.7487913349406
+T1AvsT1K_api-mir-29 T1AvsT1K api-mir-29 0.170042832942068 1.12509188764571 0.649297373393611 T1A=T1K 0 0.757513602292546 105.245364266731 94.6171458451392
+T1AvsT1K_GL350223_34252 T1AvsT1K GL350223_34252 -0.390391727934582 1.31074925688528 0.706305457833014 T1A=T1K 0 0.808240019658039 21.0291469282923 33.5756424868145
+T1AvsT1K_api-mir-137 T1AvsT1K api-mir-137 0.186715835542089 1.13816982419691 0.706632702901028 T1A=T1K 0 0.808240019658039 31.1024416700597 30.2080451857782
+T1AvsT1K_api-mir-317 T1AvsT1K api-mir-317 0.154683152724126 1.11317711342353 0.70119192803689 T1A=T1K 0 0.808240019658039 41.9865638867419 39.973195910454
+T1AvsT1K_api-mir-1 T1AvsT1K api-mir-1 0.206633192721761 1.15399197610351 0.715386664916463 T1A=T1K 0 0.812939391950526 180.619849632683 163.746504291107
+T1AvsT1K_GL350343_36481 T1AvsT1K GL350343_36481 0.135258154903011 1.09828932337501 0.753231343222206 T1A=T1K 0 0.844971058101834 21.1875817224896 18.2147172220669
+T1AvsT1K_api-mir-190 T1AvsT1K api-mir-190 0.107095457169907 1.07705763828919 0.750699383766064 T1A=T1K 0 0.844971058101834 234.550188295047 221.766347279128
+T1AvsT1K_api-mir-3031 T1AvsT1K api-mir-3031 -0.127017586898592 1.09203385789487 0.759337885524585 T1A=T1K 0 0.846395732272626 167.696215387838 188.245374819867
+T1AvsT1K_api-let-7 T1AvsT1K api-let-7 -0.154131118343296 1.11275124761865 0.777366978733461 T1A=T1K 0 0.861007729609846 17.1052875628726 20.3697975474495
+T1AvsT1K_api-mir-3036-1 T1AvsT1K api-mir-3036-1 -0.0717554902779335 1.05099477011198 0.820621713010342 T1A=T1K 0 0.884509709914779 355.864419414785 378.098568231729
+T1AvsT1K_api-mir-3036-2 T1AvsT1K api-mir-3036-2 -0.0717554902779335 1.05099477011198 0.820621713010342 T1A=T1K 0 0.884509709914779 355.864419414785 378.098568231729
+T1AvsT1K_api-mir-3036-3 T1AvsT1K api-mir-3036-3 -0.0704524082070421 1.05004591114379 0.823857615520622 T1A=T1K 0 0.884509709914779 356.02291302258 377.932084361907
+T1AvsT1K_api-mir-3036-4 T1AvsT1K api-mir-3036-4 -0.0704524082070421 1.05004591114379 0.823857615520622 T1A=T1K 0 0.884509709914779 356.02291302258 377.932084361907
+T1AvsT1K_api-mir-3036-5 T1AvsT1K api-mir-3036-5 -0.0704524082070421 1.05004591114379 0.823857615520622 T1A=T1K 0 0.884509709914779 356.02291302258 377.932084361907
+T1AvsT1K_GL350343_36473 T1AvsT1K GL350343_36473 -0.0803215727804929 1.05725367325285 0.843102219890161 T1A=T1K 0 0.894199324125928 162.229342389252 175.96217279623
+T1AvsT1K_api-mir-9a T1AvsT1K api-mir-9a 0.0552772681366053 1.03905877835059 0.841852631382137 T1A=T1K 0 0.894199324125928 812.438450656032 786.952021519981
+T1AvsT1K_GL350222_34242 T1AvsT1K GL350222_34242 0.0435103136018807 1.0306184420166 0.865141422507651 T1A=T1K 0 0.912046680354452 207.385266113065 204.094293618538
+T1AvsT1K_api-mir-278 T1AvsT1K api-mir-278 0.0916778374889447 1.06560875263065 0.871969642453005 T1A=T1K 0 0.913740643289077 41.6572236507995 44.3288514195503
+T1AvsT1K_api-mir-13a T1AvsT1K api-mir-13a -0.0577710158969872 1.04085638017562 0.880278617656449 T1A=T1K 0 0.916956893392134 2096.25066535355 2190.65508578226
+T1AvsT1K_api-mir-100 T1AvsT1K api-mir-100 0.0779682997371763 1.05553052426604 0.909634934101297 T1A=T1K 0 0.941929665489509 36.6867961405426 37.0363811562773
+T1AvsT1K_api-mir-1000 T1AvsT1K api-mir-1000 0.0256716372214375 1.01795348338184 0.941634856429541 T1A=T1K 0 0.952967111416255 53.3343119331074 54.472321032134
+T1AvsT1K_api-mir-2765 T1AvsT1K api-mir-2765 0.017272797414015 1.0120445491827 0.945284347259186 T1A=T1K 0 0.952967111416255 504.166562590324 501.98589724328
+T1AvsT1K_api-mir-3024 T1AvsT1K api-mir-3024 0.0424576452626954 1.02986672133513 0.927125295801725 T1A=T1K 0 0.952967111416255 32.9381588675413 31.2093737502546
+T1AvsT1K_api-mir-3047-1 T1AvsT1K api-mir-3047-1 0.0434904464155084 1.03060424958709 0.947521585065305 T1A=T1K 0 0.952967111416255 203.230252972802 205.085416847614
+T1AvsT1K_api-mir-3047-2 T1AvsT1K api-mir-3047-2 0.0434904464155084 1.03060424958709 0.947521585065305 T1A=T1K 0 0.952967111416255 203.230252972802 205.085416847614
+T1AvsT1K_api-mir-7 T1AvsT1K api-mir-7 -0.0166613391579242 1.01161570465349 0.969415185409705 T1A=T1K 0 0.969415185409705 181.345502480794 189.343819213867
diff -r 000000000000 -r ceef9bc6bbc7 test-data/AskoT1vsT0.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/AskoT1vsT0.txt Thu Apr 12 05:23:45 2018 -0400
@@ -0,0 +1,176 @@
+Test_id measured_in@Contrast is@gene logFC FC PValue Expression Significance FDR T1/T1A T1/T1K T0/T0A
+T1vsT0_api-mir-929 T1vsT0 api-mir-929 1.52200528879093 2.87189954935435 0.000170167334348828 T1>T0 1 0.0297792835110449 45.7383427423633 30.9159434838904 13.4370060260247
+T1vsT0_api-mir-92b-1 T1vsT0 api-mir-92b-1 -0.80417146137229 1.74614269544508 0.00072380827948343 T1T2 1 0.0157568804109526 32.9381588675413 31.2093737502546 9.39844720626758 12.6426867572395
+T1vsT2_api-mir-316 T1vsT2 api-mir-316 -2.56031506201473 5.89836483907807 0.000564267422216593 T1