# HG changeset patch
# User artbio
# Date 1499697109 14400
# Node ID 1ad5d040f85f443401aac60ed8880864055bb121
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/small_rna_map commit fa452d860cf550c7524df59e77b36fd39e3e2a45
diff -r 000000000000 -r 1ad5d040f85f small_rna_map.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/small_rna_map.py Mon Jul 10 10:31:49 2017 -0400
@@ -0,0 +1,84 @@
+import os
+from os.path import basename
+import pysam
+import argparse
+import numpy
+import collections
+
+
+def Parser():
+ the_parser = argparse.ArgumentParser()
+ the_parser.add_argument('--input', dest="input", required=True, nargs='+', help='input BAM files')
+ the_parser.add_argument('--output', action="store", type=str, help="output tabular file")
+ args = the_parser.parse_args()
+ return args
+
+
+def Ref_length(bamfile):
+ """
+ bamfile.references: list of reference names, and bamfile.lengths is list of their lengths
+ """
+ ref_length={}
+ for e1, e2 in zip(bamfile.references, bamfile.lengths):
+ ref_length[e1]=e2
+ return ref_length
+
+
+def Ref_coord_pol(bamfile):
+ ref_coord ={}
+ rnames =list(bamfile.references)
+ for read in bamfile:
+ if not read.is_unmapped:
+ polarity = "F" if (not read.is_reverse) else "R"
+ read_rname = read.reference_name
+ read_position = read.pos + 1
+ the_key = (read_rname, read_position,polarity)
+ read_length = read.qlen
+ try:
+ ref_coord[the_key][0] = ref_coord[the_key][0]+1
+ ref_coord[the_key][1].append(read_length)
+ except:
+ ref_coord[the_key] = [1,[read_length]]
+ if read_rname in rnames:
+ rnames.remove(read_rname)
+ for rname in rnames:
+ ref_coord[(rname, 0, "F")]=[0,[0]]
+ return collections.OrderedDict(sorted(ref_coord.items())) #dictionary {(read_rname,read_position,polarity):[nmbr_read,list_of_alignment_length]}
+
+
+def calcul_stat(dictionary,ref):
+ dico = {}
+ for keys in dictionary:
+ key = keys[0] #reference name
+ value = dictionary[keys][0] # position
+ try:
+ dico[key].append(value)
+ except:
+ dico[key] = []
+ dico[key].append(value)
+ the_max = max(dico[ref])
+ return the_max
+
+
+def filename(infile):
+ filename = basename(infile.filename)
+ the_name = filename.split('.')
+ return the_name[0]
+
+
+def main(infile, output):
+ with open(output,"w") as outfile:
+ outfile.write("Dataset" + "\t" + "Chromosome"+ "\t" + "Chrom_length" + "\t" + "Coordinate" + "\t" + "Nbr_reads" + "\t" + "Polarity" + "\t" + "Max" + "\t" + "Mean" + "\t" + "Median" + "\n")
+ for bamfile in infile:
+ with pysam.AlignmentFile(bamfile,"rb") as bamfile:
+ ref_coord = Ref_coord_pol(bamfile)
+ ref_length = Ref_length(bamfile)
+ tabulation = "\t"
+ for read in ref_coord:
+ table = (str(filename(bamfile)), str(read[0]), str(ref_length[str(read[0])]), str(read[1]), str(ref_coord[read][0]), str(read[2]), str(calcul_stat(ref_coord,read[0])), str(round(numpy.mean(ref_coord[read][1]),1)), str(numpy.median(ref_coord[read][1])))
+ outfile.write(tabulation.join(table) + "\n")
+
+
+if __name__ == "__main__":
+ args= Parser()
+ main(args.input, args.output)
diff -r 000000000000 -r 1ad5d040f85f small_rna_map.r
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/small_rna_map.r Mon Jul 10 10:31:49 2017 -0400
@@ -0,0 +1,164 @@
+library(optparse)
+library(ggplot2)
+library(gridExtra)
+library(RColorBrewer)
+library(gtable)
+library(grid)
+
+option_list <- list(
+ make_option(c("-r", "--output_tab"), type="character", help="path to tabular file"),
+ make_option("--output_pdf", type = "character", help="path to the pdf file with plot")
+ )
+
+parser <- OptionParser(usage = "%prog [options] file", option_list = option_list)
+args = parse_args(parser)
+
+theme_set(theme_bw()) #a theme with a white background
+Table = read.delim(args$output_tab, header=T, row.names=NULL)
+Table <- within(Table, Nbr_reads[Polarity=="R"] <- (Nbr_reads[Polarity=="R"]*-1))
+
+#To assign colors to categorical variables in ggplot2 that have stable mapping
+myColors <- brewer.pal(3,"Set1")
+names(myColors) <- levels(Table$Polarity)
+colScale <- scale_colour_manual(name = "Polarity",values = myColors)
+
+#Make initial figures
+p <- ggplot(Table, aes(x=Coordinate, y=Nbr_reads, colour=Polarity)) +
+ colScale+
+ geom_segment(aes(y = 0,
+ x = Coordinate,
+ yend = Nbr_reads,
+ xend = Coordinate,
+ color=Polarity),
+ alpha=1
+ ) +
+ geom_segment(aes(y = Nbr_reads,
+ x = 0,
+ yend=Nbr_reads,
+ xend=Chrom_length), alpha=0
+ )+
+ facet_wrap(Dataset~Chromosome, scales="free", nrow=1, labeller = label_wrap_gen(multi_line = FALSE))+
+ scale_y_continuous(breaks = function(x) round(pretty(seq(-(max(x) + 1), (max(x) + 1)))))+#to display only integer values on y axis
+ geom_hline(yintercept=0, size=0.3)+
+ theme(strip.text = element_text(size = 6, lineheight = 0.1), #specify strip size
+ panel.grid.major = element_line(colour = "#ffffff"),#conceal major grid lines
+ panel.grid.minor = element_line(colour = "#ffffff"),#conceal minor grid lines
+ axis.title = element_blank(),# Conceal axis titles
+ axis.text = element_text(size = 6))#modify the size of tick labels along axes
+#extract legend
+g_legend<-function(a.gplot){
+ tmp <- ggplot_gtable(ggplot_build(a.gplot))
+ leg <- which(sapply(tmp$grobs, function(x) x$name) == "guide-box")
+ legend <- tmp$grobs[[leg]]
+ return(legend)}
+
+mylegend <- g_legend(p);
+
+p <- p+ theme(legend.position = "none")# Hide the repeated caption
+
+# The second plot
+cols<- c("Median"="#000000", "Mean"="#fffa00")
+p2 <- ggplot(Table, aes(x = Coordinate, group=1)) +
+ geom_point(aes(y=Median, colour="Median"), alpha=1, size = 1) +
+ geom_point(aes(y=Mean, colour="Mean"), alpha= 0.3, size = 1.2)+
+ scale_colour_manual(name="", values=cols)+
+ expand_limits(y = seq(0,max(Table$Median),by=5)) +
+ facet_wrap(Dataset~Chromosome, scales="free", nrow=1, labeller = label_wrap_gen(multi_line = FALSE))+
+ geom_segment(aes(y = Nbr_reads,
+ x = 0,
+ yend=Nbr_reads,
+ xend=Chrom_length), alpha=0
+ )+
+ scale_y_continuous(limits = c(0,max(Table$Median)), position = "right")+
+ theme(strip.text = element_text(size = 6, lineheight = 0.1),
+ panel.background = element_rect(fill = NA),
+ panel.grid.major = element_blank(),
+ panel.grid.minor = element_blank(),
+ panel.border = element_rect(fill = NA, colour = "grey50"),
+ axis.text = element_text(size = 6),
+ legend.position = "right"
+ )
+mylegend2 <- g_legend(p2);
+legend <- rbind(mylegend, mylegend2)
+# Transforme ggplot graphs on list of graphs
+plot.list1 <- by(data = Table,
+ INDICES = c(Table$Chromosome),
+ simplify = TRUE,
+ FUN = function(x) {
+ p %+% x
+ })
+
+plot.list2 <- by(data = Table,
+ INDICES = c(Table$Chromosome),
+ simplify = TRUE,
+ FUN = function(x) {
+ p2 %+% x
+ })
+
+# A function to get the original tick mark length
+plot_theme <- function(p) {
+ plyr::defaults(p$theme, theme_get())
+}
+
+# ggplot contains many labels that are themselves complex grob;
+# usually a text grob surrounded by margins.
+# When moving the grobs from, say, the left to the right of a plot,
+# Make sure the margins and the justifications are swapped around.
+# The function below does the swapping.
+# Taken from the cowplot package:
+# https://github.com/wilkelab/cowplot/blob/master/R/switch_axis.R
+
+hinvert_title_grob <- function(grob){
+
+ # Swap the widths
+ widths <- grob$widths
+ grob$widths[1] <- widths[3]
+ grob$widths[3] <- widths[1]
+ grob$vp[[1]]$layout$widths[1] <- widths[3]
+ grob$vp[[1]]$layout$widths[3] <- widths[1]
+
+ # Fix the justification
+ grob$children[[1]]$hjust <- 1 - grob$children[[1]]$hjust
+ grob$children[[1]]$vjust <- 1 - grob$children[[1]]$vjust
+ grob$children[[1]]$x <- unit(1, "npc") - grob$children[[1]]$x
+ grob
+}
+
+dual_axis <- function(v1,v2){
+# Get the ggplot grobs
+ g1 <- ggplot_gtable(ggplot_build(v1))
+ g2 <- ggplot_gtable(ggplot_build(v2))
+# Get the locations of the plot panels in g1.
+ pp <- c(subset(g1$layout, grepl("panel", g1$layout$name), se = t:r))
+# Overlap panels for second plot on those of the first plot
+ g <- gtable_add_grob(g1, g2$grobs[grepl("panel", g1$layout$name)],
+ pp$t, pp$l, pp$b, pp$l)
+# Get the y axis from g2 (axis line, tick marks, and tick mark labels)
+ index <- which(g2$layout$name == "axis-r-1-1") # Which grob.
+ yaxis <- g2$grobs[[index]] # Extract the grob
+ ticks <- yaxis$children[[2]] # swap tick marks and tick mark labels
+
+# Move the tick marks, Tick mark lengths can change.
+ tml <- plot_theme(p)$axis.ticks.length # Tick mark length
+ ticks$grobs[[1]]$x <- ticks$grobs[[1]]$x - unit(1, "npc") + tml
+
+# Swap margins and fix justifications for the tick mark labels
+ticks$grobs[[2]] <- hinvert_title_grob(ticks$grobs[[2]])
+
+# Put ticks back into yaxis
+yaxis$children[[2]] <- ticks
+
+# Put the transformed yaxis on the right side of g1
+g <- gtable_add_cols(g, g2$widths[g2$layout[index, ]$l], max(pp$r))
+g <- gtable_add_grob(g, yaxis, max(pp$t), max(pp$r) + 1, max(pp$b), max(pp$r) + 1,
+ clip = "off")
+
+}
+
+plots <- list()
+len = length(plot.list1)
+for(i in 1:len ) {plots[[i]] <- dual_axis(plot.list1[[i]],plot.list2[[i]])}
+# Plotting in multiple pages with different rows
+multi.plot<-do.call(marrangeGrob,list(grobs=plots,ncol=1,nrow=8,top=NULL, bottom="Coordinates(nt)", left="Number of reads", right= legend))
+ggsave(args$output_pdf, device="pdf", plot=multi.plot, height=11.69, width=8.2)
+
diff -r 000000000000 -r 1ad5d040f85f small_rna_map.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/small_rna_map.xml Mon Jul 10 10:31:49 2017 -0400
@@ -0,0 +1,67 @@
+
+
+
+ numpy
+ pysam
+ r-optparse
+ r-ggplot2
+ r-gridextra
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+**What it does**
+
+Generate read count maps from alignment BAM files, using pysam and ggplot.
+In addition to the read counts (bars), median size and mean size of reads mapping at a given position are plotted in the graphs.
+
+**Inputs**
+Bam alignment files. Be carreful to select Bam corresponding to alignments to the same reference
+
+**Output**
+A pdf file generated by the R package ggplot2
+
+
+
+
+ 10.1093/bioinformatics/btp352
+ @Book{,
+ author = {Hadley Wickham},
+ title = {ggplot2: Elegant Graphics for Data Analysis},
+ publisher = {Springer-Verlag New York},
+ year = {2009},
+ isbn = {978-0-387-98140-6},
+ url = {http://ggplot2.org},
+ }
+
+
+
diff -r 000000000000 -r 1ad5d040f85f test-data/input1.bam
Binary file test-data/input1.bam has changed
diff -r 000000000000 -r 1ad5d040f85f test-data/input2.bam
Binary file test-data/input2.bam has changed
diff -r 000000000000 -r 1ad5d040f85f test-data/input3.bam
Binary file test-data/input3.bam has changed
diff -r 000000000000 -r 1ad5d040f85f test-data/input4.bam
Binary file test-data/input4.bam has changed
diff -r 000000000000 -r 1ad5d040f85f test-data/output.pdf
Binary file test-data/output.pdf has changed
diff -r 000000000000 -r 1ad5d040f85f test-data/output.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/output.tab Mon Jul 10 10:31:49 2017 -0400
@@ -0,0 +1,773 @@
+Dataset Chromosome Chrom_length Coordinate Nbr_reads Polarity Max Mean Median
+dataset_1 FBtr0070911 73 1 1 F 1 23.0 23.0
+dataset_1 FBtr0070911 73 4 1 F 1 20.0 20.0
+dataset_1 FBtr0070911 73 7 1 F 1 15.0 15.0
+dataset_1 FBtr0071581 71 1 2 F 2 21.0 21.0
+dataset_1 FBtr0071581 71 4 1 F 2 24.0 24.0
+dataset_1 FBtr0071630 71 1 1 F 1 22.0 22.0
+dataset_1 FBtr0071630 71 3 1 F 1 25.0 25.0
+dataset_1 FBtr0071736 72 3 6 F 6 25.0 26.0
+dataset_1 FBtr0072445 72 1 2 F 2 18.0 18.0
+dataset_1 FBtr0072445 72 2 1 F 2 19.0 19.0
+dataset_1 FBtr0072447 72 1 3 F 3 18.0 18.0
+dataset_1 FBtr0072580 74 14 1 F 1 20.0 20.0
+dataset_1 FBtr0072580 74 35 1 F 1 19.0 19.0
+dataset_1 FBtr0072580 74 36 1 F 1 18.0 18.0
+dataset_1 FBtr0072600 72 1 1 F 1 19.0 19.0
+dataset_1 FBtr0072600 72 43 1 F 1 28.0 28.0
+dataset_1 FBtr0072683 72 1 1 F 1 25.0 25.0
+dataset_1 FBtr0072683 72 40 1 F 1 17.0 17.0
+dataset_1 FBtr0072687 72 1 1 F 1 24.0 24.0
+dataset_1 FBtr0072687 72 5 1 F 1 20.0 20.0
+dataset_1 FBtr0072687 72 29 1 F 1 23.0 23.0
+dataset_1 FBtr0072690 72 32 1 F 1 20.0 20.0
+dataset_1 FBtr0072690 72 50 1 F 1 20.0 20.0
+dataset_1 FBtr0073018 72 7 1 F 1 16.0 16.0
+dataset_1 FBtr0073018 72 22 1 F 1 18.0 18.0
+dataset_1 FBtr0073020 72 1 1 F 1 20.0 20.0
+dataset_1 FBtr0073020 72 29 1 F 1 22.0 22.0
+dataset_1 FBtr0073125 73 1 1 F 1 29.0 29.0
+dataset_1 FBtr0073125 73 15 1 F 1 17.0 17.0
+dataset_1 FBtr0073125 73 16 1 F 1 19.0 19.0
+dataset_1 FBtr0073125 73 32 1 F 1 21.0 21.0
+dataset_1 FBtr0073857 73 1 1 F 1 19.0 19.0
+dataset_1 FBtr0073857 73 44 1 F 1 17.0 17.0
+dataset_1 FBtr0073861 73 30 1 F 1 22.0 22.0
+dataset_1 FBtr0073861 73 52 1 F 1 20.0 20.0
+dataset_1 FBtr0073865 82 1 1 F 1 25.0 25.0
+dataset_1 FBtr0073865 82 49 1 F 1 16.0 16.0
+dataset_1 FBtr0073866 82 1 1 F 1 24.0 24.0
+dataset_1 FBtr0073866 82 3 1 F 1 22.0 22.0
+dataset_1 FBtr0073872 82 1 1 F 1 18.0 18.0
+dataset_1 FBtr0073872 82 4 1 F 1 22.0 22.0
+dataset_1 FBtr0073872 82 44 1 F 1 20.0 20.0
+dataset_1 FBtr0073872 82 48 1 F 1 16.0 16.0
+dataset_1 FBtr0073885 82 1 2 F 2 25.0 25.0
+dataset_1 FBtr0073886 82 1 4 F 4 24.0 24.0
+dataset_1 FBtr0075244 72 1 1 F 1 19.0 19.0
+dataset_1 FBtr0075244 72 3 1 F 1 23.0 23.0
+dataset_1 FBtr0075244 72 8 1 F 1 20.0 20.0
+dataset_1 FBtr0075244 72 10 1 F 1 19.0 19.0
+dataset_1 FBtr0075681 72 1 1 F 1 19.0 19.0
+dataset_1 FBtr0075681 72 41 1 F 1 20.0 20.0
+dataset_1 FBtr0075713 72 41 1 F 1 19.0 19.0
+dataset_1 FBtr0075713 72 42 1 F 1 18.0 18.0
+dataset_1 FBtr0075713 72 43 1 F 1 16.0 16.0
+dataset_1 FBtr0075830 72 1 2 F 2 17.5 17.5
+dataset_1 FBtr0075830 72 15 1 F 2 23.0 23.0
+dataset_1 FBtr0076083 72 1 1 F 1 18.0 18.0
+dataset_1 FBtr0076083 72 33 1 F 1 21.0 21.0
+dataset_1 FBtr0076743 83 1 3 F 3 16.7 16.0
+dataset_1 FBtr0076743 83 7 1 F 3 20.0 20.0
+dataset_1 FBtr0076743 83 34 1 F 3 16.0 16.0
+dataset_1 FBtr0076743 83 45 1 F 3 21.0 21.0
+dataset_1 FBtr0076762 73 1 31 F 31 22.1 22.0
+dataset_1 FBtr0076762 73 3 1 F 31 20.0 20.0
+dataset_1 FBtr0077142 82 1 4 F 4 23.5 24.0
+dataset_1 FBtr0077142 82 3 1 F 4 21.0 21.0
+dataset_1 FBtr0077142 82 49 1 F 4 15.0 15.0
+dataset_1 FBtr0077143 73 41 1 F 3 22.0 22.0
+dataset_1 FBtr0077143 73 44 1 F 3 22.0 22.0
+dataset_1 FBtr0077143 73 45 3 F 3 17.3 16.0
+dataset_1 FBtr0077158 73 44 1 F 3 22.0 22.0
+dataset_1 FBtr0077158 73 46 3 F 3 18.7 20.0
+dataset_1 FBtr0077458 72 33 1 F 1 21.0 21.0
+dataset_1 FBtr0077458 72 35 1 F 1 20.0 20.0
+dataset_1 FBtr0077577 82 1 2 F 2 25.0 25.0
+dataset_1 FBtr0077577 82 55 1 F 2 18.0 18.0
+dataset_1 FBtr0077577 82 62 1 F 2 18.0 18.0
+dataset_1 FBtr0077613 82 1 5 F 5 24.6 25.0
+dataset_1 FBtr0077821 71 1 4 F 4 20.3 22.0
+dataset_1 FBtr0077821 71 3 2 F 4 25.0 25.0
+dataset_1 FBtr0077821 71 4 1 F 4 24.0 24.0
+dataset_1 FBtr0077821 71 18 1 F 4 23.0 23.0
+dataset_1 FBtr0077821 71 33 1 F 4 20.0 20.0
+dataset_1 FBtr0077872 71 1 3 F 4 22.7 23.0
+dataset_1 FBtr0077872 71 3 4 F 4 23.8 25.0
+dataset_1 FBtr0077872 71 4 1 F 4 19.0 19.0
+dataset_1 FBtr0077872 71 7 1 F 4 16.0 16.0
+dataset_1 FBtr0077872 71 18 2 F 4 21.0 21.0
+dataset_1 FBtr0078547 83 1 1 F 1 16.0 16.0
+dataset_1 FBtr0078547 83 50 1 F 1 15.0 15.0
+dataset_1 FBtr0079090 72 52 2 F 2 18.0 18.0
+dataset_1 FBtr0079528 71 1 3 F 3 22.3 22.0
+dataset_1 FBtr0079528 71 3 2 F 3 25.0 25.0
+dataset_1 FBtr0079528 71 18 1 F 3 23.0 23.0
+dataset_1 FBtr0079690 72 1 1 F 1 20.0 20.0
+dataset_1 FBtr0079690 72 29 1 F 1 25.0 25.0
+dataset_1 FBtr0079690 72 30 1 F 1 24.0 24.0
+dataset_1 FBtr0079693 72 1 1 F 1 23.0 23.0
+dataset_1 FBtr0079693 72 4 1 F 1 18.0 18.0
+dataset_1 FBtr0079728 72 1 1 F 1 23.0 23.0
+dataset_1 FBtr0079728 72 33 1 F 1 22.0 22.0
+dataset_1 FBtr0079752 72 1 2 F 2 28.0 28.0
+dataset_1 FBtr0079752 72 34 1 F 2 20.0 20.0
+dataset_1 FBtr0080609 72 1 2 F 2 19.5 19.5
+dataset_1 FBtr0080609 72 12 1 F 2 20.0 20.0
+dataset_1 FBtr0080609 72 34 1 F 2 19.0 19.0
+dataset_1 FBtr0080660 72 1 2 F 2 25.0 25.0
+dataset_1 FBtr0080660 72 4 1 F 2 21.0 21.0
+dataset_1 FBtr0080663 71 1 2 F 4 22.0 22.0
+dataset_1 FBtr0080663 71 3 4 F 4 24.8 25.0
+dataset_1 FBtr0080663 71 18 1 F 4 17.0 17.0
+dataset_1 FBtr0080664 71 1 1 F 3 20.0 20.0
+dataset_1 FBtr0080664 71 3 3 F 3 22.0 20.0
+dataset_1 FBtr0080664 71 18 2 F 3 22.5 22.5
+dataset_1 FBtr0080664 71 32 1 F 3 18.0 18.0
+dataset_1 FBtr0080665 71 1 4 F 4 24.3 25.0
+dataset_1 FBtr0080665 71 3 1 F 4 25.0 25.0
+dataset_1 FBtr0080665 71 16 1 F 4 16.0 16.0
+dataset_1 FBtr0080665 71 18 1 F 4 23.0 23.0
+dataset_1 FBtr0080666 71 1 5 F 5 23.4 23.0
+dataset_1 FBtr0080666 71 3 1 F 5 25.0 25.0
+dataset_1 FBtr0080666 71 15 1 F 5 18.0 18.0
+dataset_1 FBtr0080666 71 18 2 F 5 23.0 23.0
+dataset_1 FBtr0080666 71 35 1 F 5 18.0 18.0
+dataset_1 FBtr0081565 72 3 8 F 8 21.4 21.0
+dataset_1 FBtr0081610 72 3 8 F 8 20.8 21.0
+dataset_1 FBtr0081809 73 8 1 F 1 16.0 16.0
+dataset_1 FBtr0081809 73 36 1 F 1 18.0 18.0
+dataset_1 FBtr0081811 73 29 1 F 1 23.0 23.0
+dataset_1 FBtr0081811 73 57 1 R 1 16.0 16.0
+dataset_1 FBtr0081894 73 1 1 F 1 23.0 23.0
+dataset_1 FBtr0081894 73 51 1 F 1 20.0 20.0
+dataset_1 FBtr0081895 73 6 1 F 1 18.0 18.0
+dataset_1 FBtr0081895 73 26 1 F 1 15.0 15.0
+dataset_1 FBtr0081895 73 39 1 F 1 16.0 16.0
+dataset_1 FBtr0081923 73 13 1 F 1 23.0 23.0
+dataset_1 FBtr0081923 73 14 1 F 1 16.0 16.0
+dataset_1 FBtr0083267 73 15 1 F 1 17.0 17.0
+dataset_1 FBtr0083267 73 23 1 F 1 18.0 18.0
+dataset_1 FBtr0083468 73 1 31 F 31 21.8 22.0
+dataset_1 FBtr0083468 73 6 1 F 31 20.0 20.0
+dataset_1 FBtr0083469 72 1 1 F 1 21.0 21.0
+dataset_1 FBtr0083469 72 4 1 F 1 22.0 22.0
+dataset_1 FBtr0083469 72 18 1 F 1 19.0 19.0
+dataset_1 FBtr0083469 72 19 1 F 1 21.0 21.0
+dataset_1 FBtr0083469 72 32 1 F 1 22.0 22.0
+dataset_1 FBtr0083472 72 4 1 F 2 27.0 27.0
+dataset_1 FBtr0083472 72 6 1 F 2 25.0 25.0
+dataset_1 FBtr0083472 72 11 2 F 2 19.0 19.0
+dataset_1 FBtr0083472 72 31 1 F 2 23.0 23.0
+dataset_1 FBtr0083472 72 33 1 F 2 21.0 21.0
+dataset_1 FBtr0083473 72 1 1 F 3 23.0 23.0
+dataset_1 FBtr0083473 72 4 3 F 3 24.3 24.0
+dataset_1 FBtr0083473 72 8 1 F 3 18.0 18.0
+dataset_1 FBtr0083473 72 33 2 F 3 20.5 20.5
+dataset_1 FBtr0083474 73 1 20 F 20 22.1 22.0
+dataset_1 FBtr0083474 73 3 1 F 20 25.0 25.0
+dataset_1 FBtr0083475 73 1 24 F 24 22.5 22.0
+dataset_1 FBtr0083475 73 3 1 F 24 19.0 19.0
+dataset_1 FBtr0083475 73 4 1 F 24 19.0 19.0
+dataset_1 FBtr0083475 73 6 1 F 24 16.0 16.0
+dataset_1 FBtr0083477 73 1 25 F 25 21.5 22.0
+dataset_1 FBtr0083477 73 7 1 F 25 16.0 16.0
+dataset_1 FBtr0083477 73 39 1 F 25 16.0 16.0
+dataset_1 FBtr0083491 73 1 29 F 29 22.0 22.0
+dataset_1 FBtr0083492 73 1 27 F 27 21.9 22.0
+dataset_1 FBtr0083492 73 4 2 F 27 19.0 19.0
+dataset_1 FBtr0083492 73 42 1 F 27 20.0 20.0
+dataset_1 FBtr0083493 73 1 18 F 18 22.4 22.0
+dataset_1 FBtr0083494 73 1 19 F 19 22.4 22.0
+dataset_1 FBtr0083499 73 1 27 F 27 21.7 22.0
+dataset_1 FBtr0083499 73 3 1 F 27 20.0 20.0
+dataset_1 FBtr0083499 73 4 1 F 27 19.0 19.0
+dataset_1 FBtr0083501 72 1 1 F 2 16.0 16.0
+dataset_1 FBtr0083501 72 4 1 F 2 17.0 17.0
+dataset_1 FBtr0083501 72 15 1 F 2 23.0 23.0
+dataset_1 FBtr0083501 72 31 2 F 2 23.0 23.0
+dataset_1 FBtr0083544 72 1 1 F 7 23.0 23.0
+dataset_1 FBtr0083544 72 3 7 F 7 21.3 21.0
+dataset_1 FBtr0083544 72 38 1 F 7 16.0 16.0
+dataset_1 FBtr0083545 72 3 8 F 8 20.6 21.0
+dataset_1 FBtr0083545 72 45 1 F 8 17.0 17.0
+dataset_1 FBtr0083693 72 4 1 F 1 27.0 27.0
+dataset_1 FBtr0083693 72 32 1 F 1 22.0 22.0
+dataset_1 FBtr0083693 72 33 1 F 1 21.0 21.0
+dataset_1 FBtr0083793 73 1 30 F 30 22.1 22.0
+dataset_1 FBtr0084597 84 9 1 F 1 17.0 17.0
+dataset_1 FBtr0084597 84 12 1 F 1 15.0 15.0
+dataset_1 FBtr0084597 84 48 1 F 1 18.0 18.0
+dataset_1 FBtr0085979 73 58 1 R 1 15.0 15.0
+dataset_1 FBtr0086006 73 41 1 F 1 23.0 23.0
+dataset_1 FBtr0086006 73 44 1 F 1 20.0 20.0
+dataset_1 FBtr0086015 74 1 1 F 1 19.0 19.0
+dataset_1 FBtr0086015 74 42 1 F 1 20.0 20.0
+dataset_1 FBtr0086190 73 6 1 F 1 18.0 18.0
+dataset_1 FBtr0086190 73 30 1 F 1 17.0 17.0
+dataset_1 FBtr0086234 72 33 1 R 1 24.0 24.0
+dataset_1 FBtr0086312 71 1 4 F 4 21.0 22.0
+dataset_1 FBtr0086312 71 3 4 F 4 21.0 21.5
+dataset_1 FBtr0086312 71 18 1 F 4 23.0 23.0
+dataset_1 FBtr0086312 71 20 1 F 4 22.0 22.0
+dataset_1 FBtr0086314 71 1 1 F 4 22.0 22.0
+dataset_1 FBtr0086314 71 3 4 F 4 25.3 25.0
+dataset_1 FBtr0086314 71 18 1 F 4 23.0 23.0
+dataset_1 FBtr0086332 72 7 1 F 1 18.0 18.0
+dataset_1 FBtr0086332 72 10 1 F 1 15.0 15.0
+dataset_1 FBtr0086334 73 4 1 F 1 24.0 24.0
+dataset_1 FBtr0086334 73 5 1 F 1 17.0 17.0
+dataset_1 FBtr0086334 73 16 1 F 1 16.0 16.0
+dataset_1 FBtr0086445 72 1 1 F 1 23.0 23.0
+dataset_1 FBtr0086445 72 16 1 F 1 16.0 16.0
+dataset_1 FBtr0086446 72 4 1 F 1 17.0 17.0
+dataset_1 FBtr0086446 72 20 1 F 1 21.0 21.0
+dataset_1 FBtr0086448 72 1 1 F 1 18.0 18.0
+dataset_1 FBtr0086448 72 14 1 F 1 18.0 18.0
+dataset_1 FBtr0086448 72 19 1 F 1 22.0 22.0
+dataset_1 FBtr0086603 72 28 1 F 1 23.0 23.0
+dataset_1 FBtr0086603 72 35 1 F 1 16.0 16.0
+dataset_1 FBtr0086603 72 37 1 F 1 18.0 18.0
+dataset_1 FBtr0086611 82 1 1 F 2 27.0 27.0
+dataset_1 FBtr0086611 82 12 2 F 2 16.5 16.5
+dataset_1 FBtr0086659 71 1 2 F 3 20.0 20.0
+dataset_1 FBtr0086659 71 3 3 F 3 23.3 25.0
+dataset_1 FBtr0086659 71 4 1 F 3 24.0 24.0
+dataset_1 FBtr0086659 71 7 1 F 3 16.0 16.0
+dataset_1 FBtr0086659 71 8 1 F 3 20.0 20.0
+dataset_1 FBtr0086659 71 18 2 F 3 23.0 23.0
+dataset_1 FBtr0086659 71 51 1 F 3 18.0 18.0
+dataset_1 FBtr0086898 73 7 1 F 1 17.0 17.0
+dataset_1 FBtr0086898 73 40 1 F 1 18.0 18.0
+dataset_1 FBtr0086908 72 1 4 F 4 19.8 19.0
+dataset_1 FBtr0086908 72 7 1 F 4 16.0 16.0
+dataset_1 FBtr0086965 72 1 7 F 7 19.6 20.0
+dataset_1 FBtr0087055 71 1 3 F 3 22.3 22.0
+dataset_1 FBtr0087055 71 3 2 F 3 24.5 24.5
+dataset_1 FBtr0087055 71 4 2 F 3 22.0 22.0
+dataset_1 FBtr0087055 71 7 3 F 3 16.0 16.0
+dataset_1 FBtr0087129 72 1 1 F 1 18.0 18.0
+dataset_1 FBtr0087129 72 7 1 F 1 23.0 23.0
+dataset_1 FBtr0087197 72 1 2 F 2 24.5 24.5
+dataset_1 FBtr0087197 72 4 2 F 2 26.0 26.0
+dataset_1 FBtr0087197 72 43 1 F 2 27.0 27.0
+dataset_1 FBtr0087198 72 15 1 F 1 16.0 16.0
+dataset_1 FBtr0087198 72 30 1 F 1 21.0 21.0
+dataset_1 FBtr0087688 73 12 2 F 2 16.0 16.0
+dataset_1 FBtr0087688 73 15 1 F 2 16.0 16.0
+dataset_1 FBtr0087961 72 5 1 F 1 24.0 24.0
+dataset_1 FBtr0087961 72 10 1 F 1 18.0 18.0
+dataset_1 FBtr0087962 72 3 1 F 1 26.0 26.0
+dataset_1 FBtr0087962 72 28 1 F 1 17.0 17.0
+dataset_1 FBtr0088087 73 1 1 F 1 18.0 18.0
+dataset_1 FBtr0088087 73 42 1 F 1 15.0 15.0
+dataset_1 FBtr0088156 87 6 1 F 1 18.0 18.0
+dataset_1 FBtr0088156 87 8 1 F 1 19.0 19.0
+dataset_1 FBtr0088156 87 41 1 F 1 18.0 18.0
+dataset_1 FBtr0089302 83 1 1 F 1 19.0 19.0
+dataset_1 FBtr0089302 83 12 1 F 1 16.0 16.0
+dataset_1 FBtr0089302 83 45 1 F 1 20.0 20.0
+dataset_1 FBtr0089613 71 1 4 F 4 23.3 22.5
+dataset_1 FBtr0089613 71 3 3 F 4 22.7 23.0
+dataset_1 FBtr0089613 71 19 1 F 4 22.0 22.0
+dataset_1 FBtr0089613 71 51 1 F 4 18.0 18.0
+dataset_1 FBtr0100842 73 1 28 F 28 22.0 22.0
+dataset_1 FBtr0100843 72 1 1 F 1 26.0 26.0
+dataset_1 FBtr0100843 72 4 1 F 1 26.0 26.0
+dataset_1 FBtr0100843 72 32 1 F 1 22.0 22.0
+dataset_1 FBtr0100845 84 11 1 F 1 15.0 15.0
+dataset_1 FBtr0100845 84 12 1 F 1 15.0 15.0
+dataset_1 FBtr0100846 73 16 1 F 1 16.0 16.0
+dataset_1 FBtr0100846 73 42 1 F 1 21.0 21.0
+dataset_1 FBtr0100847 72 28 1 F 1 23.0 23.0
+dataset_1 FBtr0100847 72 53 1 F 1 16.0 16.0
+dataset_1 FBtr0100854 65 1 14 F 14 18.8 20.0
+dataset_1 FBtr0100854 65 2 1 F 14 19.0 19.0
+dataset_1 FBtr0100854 65 19 1 F 14 21.0 21.0
+dataset_1 FBtr0100856 69 33 1 F 1 17.0 17.0
+dataset_1 FBtr0100856 69 47 1 F 1 18.0 18.0
+dataset_1 FBtr0100858 66 1 1 F 1 22.0 22.0
+dataset_1 FBtr0100858 66 3 1 F 1 17.0 17.0
+dataset_1 FBtr0100859 62 1 1 F 2 16.0 16.0
+dataset_1 FBtr0100859 62 5 1 F 2 16.0 16.0
+dataset_1 FBtr0100859 62 16 1 F 2 17.0 17.0
+dataset_1 FBtr0100859 62 29 1 F 2 18.0 18.0
+dataset_1 FBtr0100859 62 45 2 F 2 17.0 17.0
+dataset_1 FBtr0100860 66 1 1 F 2 17.0 17.0
+dataset_1 FBtr0100860 66 7 1 F 2 17.0 17.0
+dataset_1 FBtr0100860 66 11 1 F 2 17.0 17.0
+dataset_1 FBtr0100860 66 13 1 F 2 18.0 18.0
+dataset_1 FBtr0100860 66 18 2 F 2 17.0 17.0
+dataset_1 FBtr0100860 66 20 1 F 2 15.0 15.0
+dataset_1 FBtr0100860 66 46 1 F 2 17.0 17.0
+dataset_1 FBtr0100862 66 1 2 F 4 16.5 16.5
+dataset_1 FBtr0100862 66 6 2 F 4 20.0 20.0
+dataset_1 FBtr0100862 66 22 1 F 4 19.0 19.0
+dataset_1 FBtr0100862 66 44 4 F 4 20.0 20.0
+dataset_1 FBtr0100862 66 46 1 F 4 18.0 18.0
+dataset_1 FBtr0100862 66 48 2 F 4 18.5 18.5
+dataset_1 FBtr0100862 66 49 1 F 4 18.0 18.0
+dataset_1 FBtr0100864 71 1 8 F 8 18.5 18.0
+dataset_1 FBtr0100864 71 3 1 F 8 23.0 23.0
+dataset_1 FBtr0100864 71 8 1 F 8 18.0 18.0
+dataset_1 FBtr0100864 71 10 1 F 8 22.0 22.0
+dataset_1 FBtr0100864 71 11 1 F 8 20.0 20.0
+dataset_1 FBtr0100864 71 12 2 F 8 21.5 21.5
+dataset_1 FBtr0100864 71 13 1 F 8 24.0 24.0
+dataset_1 FBtr0100864 71 14 1 F 8 20.0 20.0
+dataset_1 FBtr0100864 71 15 3 F 8 19.7 21.0
+dataset_1 FBtr0100864 71 16 2 F 8 20.5 20.5
+dataset_1 FBtr0100864 71 19 1 F 8 18.0 18.0
+dataset_1 FBtr0100864 71 21 2 F 8 17.0 17.0
+dataset_1 FBtr0100864 71 44 2 F 8 16.0 16.0
+dataset_1 FBtr0100864 71 51 1 F 8 21.0 21.0
+dataset_1 FBtr0100864 71 56 1 F 8 16.0 16.0
+dataset_1 FBtr0100865 67 1 1 F 1 16.0 16.0
+dataset_1 FBtr0100865 67 19 1 F 1 19.0 19.0
+dataset_1 FBtr0100865 67 20 1 F 1 20.0 20.0
+dataset_1 FBtr0100865 67 23 1 F 1 17.0 17.0
+dataset_1 FBtr0100869 65 1 3 F 3 18.3 19.0
+dataset_1 FBtr0100869 65 12 1 F 3 16.0 16.0
+dataset_1 FBtr0100869 65 16 1 F 3 17.0 17.0
+dataset_1 FBtr0100869 65 17 1 F 3 20.0 20.0
+dataset_1 FBtr0100869 65 28 1 F 3 16.0 16.0
+dataset_1 FBtr0100869 65 30 2 F 3 20.5 20.5
+dataset_1 FBtr0100869 65 33 2 F 3 19.5 19.5
+dataset_1 FBtr0100869 65 36 1 F 3 18.0 18.0
+dataset_1 FBtr0100871 65 1 22 F 22 17.1 17.0
+dataset_1 FBtr0100871 65 15 1 F 22 23.0 23.0
+dataset_1 FBtr0100871 65 27 1 F 22 16.0 16.0
+dataset_1 FBtr0100872 64 1 49 F 49 18.8 18.0
+dataset_1 FBtr0100872 64 2 1 F 49 17.0 17.0
+dataset_1 FBtr0100872 64 5 1 F 49 18.0 18.0
+dataset_1 FBtr0100872 64 6 2 F 49 17.0 17.0
+dataset_1 FBtr0100872 64 7 3 F 49 17.3 16.0
+dataset_1 FBtr0100872 64 8 1 F 49 19.0 19.0
+dataset_1 FBtr0100872 64 9 2 F 49 19.5 19.5
+dataset_1 FBtr0100872 64 10 2 F 49 20.0 20.0
+dataset_1 FBtr0100872 64 11 1 F 49 16.0 16.0
+dataset_1 FBtr0100872 64 13 1 F 49 16.0 16.0
+dataset_1 FBtr0100872 64 15 5 F 49 22.0 22.0
+dataset_1 FBtr0100872 64 16 2 F 49 21.0 21.0
+dataset_1 FBtr0100872 64 18 2 F 49 19.5 19.5
+dataset_1 FBtr0100872 64 19 9 F 49 18.2 18.0
+dataset_1 FBtr0100872 64 22 3 F 49 16.0 16.0
+dataset_1 FBtr0100872 64 36 2 F 49 16.0 16.0
+dataset_1 FBtr0100872 64 42 1 F 49 18.0 18.0
+dataset_1 FBtr0100874 68 1 83 F 83 19.5 19.0
+dataset_1 FBtr0100874 68 3 4 F 83 17.3 17.0
+dataset_1 FBtr0100874 68 4 1 F 83 18.0 18.0
+dataset_1 FBtr0100874 68 5 1 F 83 17.0 17.0
+dataset_1 FBtr0100874 68 10 1 F 83 16.0 16.0
+dataset_1 FBtr0100874 68 13 1 F 83 23.0 23.0
+dataset_1 FBtr0100874 68 20 1 F 83 20.0 20.0
+dataset_1 FBtr0100875 67 3 1 F 1 18.0 18.0
+dataset_1 FBtr0100875 67 26 1 F 1 16.0 16.0
+dataset_1 FBtr0100875 67 48 1 F 1 16.0 16.0
+dataset_1 FBtr0100876 65 1 1 F 2 27.0 27.0
+dataset_1 FBtr0100876 65 6 1 F 2 16.0 16.0
+dataset_1 FBtr0100876 65 9 1 F 2 19.0 19.0
+dataset_1 FBtr0100876 65 13 2 F 2 15.5 15.5
+dataset_1 FBtr0100876 65 18 1 F 2 19.0 19.0
+dataset_1 FBtr0100876 65 19 1 F 2 18.0 18.0
+dataset_1 FBtr0100876 65 28 1 F 2 17.0 17.0
+dataset_1 FBtr0100876 65 29 1 F 2 19.0 19.0
+dataset_1 FBtr0100876 65 48 1 F 2 16.0 16.0
+dataset_1 FBtr0100878 66 23 1 F 3 21.0 21.0
+dataset_1 FBtr0100878 66 26 1 F 3 16.0 16.0
+dataset_1 FBtr0100878 66 27 1 F 3 15.0 15.0
+dataset_1 FBtr0100878 66 28 3 F 3 18.3 18.0
+dataset_1 FBtr0100878 66 30 2 F 3 20.0 20.0
+dataset_1 FBtr0100878 66 34 2 F 3 18.0 18.0
+dataset_1 FBtr0100878 66 35 1 F 3 15.0 15.0
+dataset_1 FBtr0100885 66 20 1 F 2 23.0 23.0
+dataset_1 FBtr0100885 66 46 2 F 2 17.0 17.0
+dataset_1 FBtr0100885 66 47 1 F 2 16.0 16.0
+dataset_1 FBtr0100887 65 1 1 F 1 21.0 21.0
+dataset_1 FBtr0100887 65 5 1 F 1 21.0 21.0
+dataset_1 FBtr0100887 65 6 1 F 1 20.0 20.0
+dataset_1 FBtr0100887 65 39 1 F 1 21.0 21.0
+dataset_1 FBtr0100889 73 3 1 F 1 19.0 19.0
+dataset_1 FBtr0100889 73 15 1 F 1 17.0 17.0
+dataset_1 FBtr0100889 73 23 1 F 1 20.0 20.0
+dataset_1 FBtr0100889 73 24 1 F 1 23.0 23.0
+dataset_1 FBtr0100889 73 27 1 F 1 15.0 15.0
+dataset_1 FBtr0100889 73 37 1 F 1 20.0 20.0
+dataset_1 FBtr0100889 73 42 1 F 1 17.0 17.0
+dataset_1 FBtr0100889 73 48 1 F 1 19.0 19.0
+dataset_2 FBtr0070911 73 1 1 F 1 23.0 23.0
+dataset_2 FBtr0070911 73 4 1 F 1 20.0 20.0
+dataset_2 FBtr0070911 73 7 1 F 1 15.0 15.0
+dataset_2 FBtr0071581 71 1 2 F 2 21.0 21.0
+dataset_2 FBtr0071581 71 4 1 F 2 24.0 24.0
+dataset_2 FBtr0071630 71 1 1 F 1 22.0 22.0
+dataset_2 FBtr0071630 71 3 1 F 1 25.0 25.0
+dataset_2 FBtr0071736 72 3 6 F 6 25.0 26.0
+dataset_2 FBtr0072445 72 1 2 F 2 18.0 18.0
+dataset_2 FBtr0072445 72 2 1 F 2 19.0 19.0
+dataset_2 FBtr0072447 72 1 3 F 3 18.0 18.0
+dataset_2 FBtr0072580 74 14 1 F 1 20.0 20.0
+dataset_2 FBtr0072580 74 35 1 F 1 19.0 19.0
+dataset_2 FBtr0072580 74 36 1 F 1 18.0 18.0
+dataset_2 FBtr0072600 72 1 1 F 1 19.0 19.0
+dataset_2 FBtr0072600 72 43 1 F 1 28.0 28.0
+dataset_2 FBtr0072683 72 1 1 F 1 25.0 25.0
+dataset_2 FBtr0072683 72 40 1 F 1 17.0 17.0
+dataset_2 FBtr0072687 72 1 1 F 1 24.0 24.0
+dataset_2 FBtr0072687 72 5 1 F 1 20.0 20.0
+dataset_2 FBtr0072687 72 29 1 F 1 23.0 23.0
+dataset_2 FBtr0072690 72 32 1 F 1 20.0 20.0
+dataset_2 FBtr0072690 72 50 1 F 1 20.0 20.0
+dataset_2 FBtr0073018 72 7 1 F 1 16.0 16.0
+dataset_2 FBtr0073018 72 22 1 F 1 18.0 18.0
+dataset_2 FBtr0073020 72 1 1 F 1 20.0 20.0
+dataset_2 FBtr0073020 72 29 1 F 1 22.0 22.0
+dataset_2 FBtr0073125 73 1 1 F 1 29.0 29.0
+dataset_2 FBtr0073125 73 15 1 F 1 17.0 17.0
+dataset_2 FBtr0073125 73 16 1 F 1 19.0 19.0
+dataset_2 FBtr0073125 73 32 1 F 1 21.0 21.0
+dataset_2 FBtr0073857 73 1 1 F 1 19.0 19.0
+dataset_2 FBtr0073857 73 44 1 F 1 17.0 17.0
+dataset_2 FBtr0073861 73 30 1 F 1 22.0 22.0
+dataset_2 FBtr0073861 73 52 1 F 1 20.0 20.0
+dataset_2 FBtr0073865 82 1 1 F 1 25.0 25.0
+dataset_2 FBtr0073865 82 49 1 F 1 16.0 16.0
+dataset_2 FBtr0073866 82 1 1 F 1 24.0 24.0
+dataset_2 FBtr0073866 82 3 1 F 1 22.0 22.0
+dataset_2 FBtr0073872 82 1 1 F 1 18.0 18.0
+dataset_2 FBtr0073872 82 4 1 F 1 22.0 22.0
+dataset_2 FBtr0073872 82 44 1 F 1 20.0 20.0
+dataset_2 FBtr0073872 82 48 1 F 1 16.0 16.0
+dataset_2 FBtr0073885 82 1 2 F 2 25.0 25.0
+dataset_2 FBtr0073886 82 1 4 F 4 24.0 24.0
+dataset_2 FBtr0075244 72 1 1 F 1 19.0 19.0
+dataset_2 FBtr0075244 72 3 1 F 1 23.0 23.0
+dataset_2 FBtr0075244 72 8 1 F 1 20.0 20.0
+dataset_2 FBtr0075244 72 10 1 F 1 19.0 19.0
+dataset_2 FBtr0075681 72 1 1 F 1 19.0 19.0
+dataset_2 FBtr0075681 72 41 1 F 1 20.0 20.0
+dataset_2 FBtr0075713 72 41 1 F 1 19.0 19.0
+dataset_2 FBtr0075713 72 42 1 F 1 18.0 18.0
+dataset_2 FBtr0075713 72 43 1 F 1 16.0 16.0
+dataset_2 FBtr0075830 72 1 2 F 2 17.5 17.5
+dataset_2 FBtr0075830 72 15 1 F 2 23.0 23.0
+dataset_2 FBtr0076083 72 1 1 F 1 18.0 18.0
+dataset_2 FBtr0076083 72 33 1 F 1 21.0 21.0
+dataset_2 FBtr0076743 83 1 3 F 3 16.7 16.0
+dataset_2 FBtr0076743 83 7 1 F 3 20.0 20.0
+dataset_2 FBtr0076743 83 34 1 F 3 16.0 16.0
+dataset_2 FBtr0076743 83 45 1 F 3 21.0 21.0
+dataset_2 FBtr0076762 73 1 31 F 31 22.1 22.0
+dataset_2 FBtr0076762 73 3 1 F 31 20.0 20.0
+dataset_2 FBtr0077142 82 1 4 F 4 23.5 24.0
+dataset_2 FBtr0077142 82 3 1 F 4 21.0 21.0
+dataset_2 FBtr0077142 82 49 1 F 4 15.0 15.0
+dataset_2 FBtr0077143 73 41 1 F 3 22.0 22.0
+dataset_2 FBtr0077143 73 44 1 F 3 22.0 22.0
+dataset_2 FBtr0077143 73 45 3 F 3 17.3 16.0
+dataset_2 FBtr0077158 73 44 1 F 3 22.0 22.0
+dataset_2 FBtr0077158 73 46 3 F 3 18.7 20.0
+dataset_2 FBtr0077458 72 33 1 F 1 21.0 21.0
+dataset_2 FBtr0077458 72 35 1 F 1 20.0 20.0
+dataset_2 FBtr0077577 82 1 2 F 2 25.0 25.0
+dataset_2 FBtr0077577 82 55 1 F 2 18.0 18.0
+dataset_2 FBtr0077577 82 62 1 F 2 18.0 18.0
+dataset_2 FBtr0077613 82 1 5 F 5 24.6 25.0
+dataset_2 FBtr0077821 71 1 4 F 4 20.3 22.0
+dataset_2 FBtr0077821 71 3 2 F 4 25.0 25.0
+dataset_2 FBtr0077821 71 4 1 F 4 24.0 24.0
+dataset_2 FBtr0077821 71 18 1 F 4 23.0 23.0
+dataset_2 FBtr0077821 71 33 1 F 4 20.0 20.0
+dataset_2 FBtr0077872 71 1 3 F 4 22.7 23.0
+dataset_2 FBtr0077872 71 3 4 F 4 23.8 25.0
+dataset_2 FBtr0077872 71 4 1 F 4 19.0 19.0
+dataset_2 FBtr0077872 71 7 1 F 4 16.0 16.0
+dataset_2 FBtr0077872 71 18 2 F 4 21.0 21.0
+dataset_2 FBtr0078547 83 1 1 F 1 16.0 16.0
+dataset_2 FBtr0078547 83 50 1 F 1 15.0 15.0
+dataset_2 FBtr0079090 72 52 2 F 2 18.0 18.0
+dataset_2 FBtr0079528 71 1 3 F 3 22.3 22.0
+dataset_2 FBtr0079528 71 3 2 F 3 25.0 25.0
+dataset_2 FBtr0079528 71 18 1 F 3 23.0 23.0
+dataset_2 FBtr0079690 72 1 1 F 1 20.0 20.0
+dataset_2 FBtr0079690 72 29 1 F 1 25.0 25.0
+dataset_2 FBtr0079690 72 30 1 F 1 24.0 24.0
+dataset_2 FBtr0079693 72 1 1 F 1 23.0 23.0
+dataset_2 FBtr0079693 72 4 1 F 1 18.0 18.0
+dataset_2 FBtr0079728 72 1 1 F 1 23.0 23.0
+dataset_2 FBtr0079728 72 33 1 F 1 22.0 22.0
+dataset_2 FBtr0079752 72 1 2 F 2 28.0 28.0
+dataset_2 FBtr0079752 72 34 1 F 2 20.0 20.0
+dataset_2 FBtr0080609 72 1 2 F 2 19.5 19.5
+dataset_2 FBtr0080609 72 12 1 F 2 20.0 20.0
+dataset_2 FBtr0080609 72 34 1 F 2 19.0 19.0
+dataset_2 FBtr0080660 72 1 2 F 2 25.0 25.0
+dataset_2 FBtr0080660 72 4 1 F 2 21.0 21.0
+dataset_2 FBtr0080663 71 1 2 F 4 22.0 22.0
+dataset_2 FBtr0080663 71 3 4 F 4 24.8 25.0
+dataset_2 FBtr0080663 71 18 1 F 4 17.0 17.0
+dataset_2 FBtr0080664 71 1 1 F 3 20.0 20.0
+dataset_2 FBtr0080664 71 3 3 F 3 22.0 20.0
+dataset_2 FBtr0080664 71 18 2 F 3 22.5 22.5
+dataset_2 FBtr0080664 71 32 1 F 3 18.0 18.0
+dataset_2 FBtr0080665 71 1 4 F 4 24.3 25.0
+dataset_2 FBtr0080665 71 3 1 F 4 25.0 25.0
+dataset_2 FBtr0080665 71 16 1 F 4 16.0 16.0
+dataset_2 FBtr0080665 71 18 1 F 4 23.0 23.0
+dataset_2 FBtr0080666 71 1 5 F 5 23.4 23.0
+dataset_2 FBtr0080666 71 3 1 F 5 25.0 25.0
+dataset_2 FBtr0080666 71 15 1 F 5 18.0 18.0
+dataset_2 FBtr0080666 71 18 2 F 5 23.0 23.0
+dataset_2 FBtr0080666 71 35 1 F 5 18.0 18.0
+dataset_2 FBtr0081565 72 3 8 F 8 21.4 21.0
+dataset_2 FBtr0081610 72 3 8 F 8 20.8 21.0
+dataset_2 FBtr0081809 73 8 1 F 1 16.0 16.0
+dataset_2 FBtr0081809 73 36 1 F 1 18.0 18.0
+dataset_2 FBtr0081811 73 29 1 F 1 23.0 23.0
+dataset_2 FBtr0081811 73 57 1 R 1 16.0 16.0
+dataset_2 FBtr0081894 73 1 1 F 1 23.0 23.0
+dataset_2 FBtr0081894 73 51 1 F 1 20.0 20.0
+dataset_2 FBtr0081895 73 6 1 F 1 18.0 18.0
+dataset_2 FBtr0081895 73 26 1 F 1 15.0 15.0
+dataset_2 FBtr0081895 73 39 1 F 1 16.0 16.0
+dataset_2 FBtr0081923 73 13 1 F 1 23.0 23.0
+dataset_2 FBtr0081923 73 14 1 F 1 16.0 16.0
+dataset_2 FBtr0083267 73 15 1 F 1 17.0 17.0
+dataset_2 FBtr0083267 73 23 1 F 1 18.0 18.0
+dataset_2 FBtr0083468 73 1 31 F 31 21.8 22.0
+dataset_2 FBtr0083468 73 6 1 F 31 20.0 20.0
+dataset_2 FBtr0083469 72 1 1 F 1 21.0 21.0
+dataset_2 FBtr0083469 72 4 1 F 1 22.0 22.0
+dataset_2 FBtr0083469 72 18 1 F 1 19.0 19.0
+dataset_2 FBtr0083469 72 19 1 F 1 21.0 21.0
+dataset_2 FBtr0083469 72 32 1 F 1 22.0 22.0
+dataset_2 FBtr0083472 72 4 1 F 2 27.0 27.0
+dataset_2 FBtr0083472 72 6 1 F 2 25.0 25.0
+dataset_2 FBtr0083472 72 11 2 F 2 19.0 19.0
+dataset_2 FBtr0083472 72 31 1 F 2 23.0 23.0
+dataset_2 FBtr0083472 72 33 1 F 2 21.0 21.0
+dataset_2 FBtr0083473 72 1 1 F 3 23.0 23.0
+dataset_2 FBtr0083473 72 4 3 F 3 24.3 24.0
+dataset_2 FBtr0083473 72 8 1 F 3 18.0 18.0
+dataset_2 FBtr0083473 72 33 2 F 3 20.5 20.5
+dataset_2 FBtr0083474 73 1 20 F 20 22.1 22.0
+dataset_2 FBtr0083474 73 3 1 F 20 25.0 25.0
+dataset_2 FBtr0083475 73 1 24 F 24 22.5 22.0
+dataset_2 FBtr0083475 73 3 1 F 24 19.0 19.0
+dataset_2 FBtr0083475 73 4 1 F 24 19.0 19.0
+dataset_2 FBtr0083475 73 6 1 F 24 16.0 16.0
+dataset_2 FBtr0083477 73 1 25 F 25 21.5 22.0
+dataset_2 FBtr0083477 73 7 1 F 25 16.0 16.0
+dataset_2 FBtr0083477 73 39 1 F 25 16.0 16.0
+dataset_2 FBtr0083491 73 1 29 F 29 22.0 22.0
+dataset_2 FBtr0083492 73 1 27 F 27 21.9 22.0
+dataset_2 FBtr0083492 73 4 2 F 27 19.0 19.0
+dataset_2 FBtr0083492 73 42 1 F 27 20.0 20.0
+dataset_2 FBtr0083493 73 1 18 F 18 22.4 22.0
+dataset_2 FBtr0083494 73 1 19 F 19 22.4 22.0
+dataset_2 FBtr0083499 73 1 27 F 27 21.7 22.0
+dataset_2 FBtr0083499 73 3 1 F 27 20.0 20.0
+dataset_2 FBtr0083499 73 4 1 F 27 19.0 19.0
+dataset_2 FBtr0083501 72 1 1 F 2 16.0 16.0
+dataset_2 FBtr0083501 72 4 1 F 2 17.0 17.0
+dataset_2 FBtr0083501 72 15 1 F 2 23.0 23.0
+dataset_2 FBtr0083501 72 31 2 F 2 23.0 23.0
+dataset_2 FBtr0083544 72 1 1 F 7 23.0 23.0
+dataset_2 FBtr0083544 72 3 7 F 7 21.3 21.0
+dataset_2 FBtr0083544 72 38 1 F 7 16.0 16.0
+dataset_2 FBtr0083545 72 3 8 F 8 20.6 21.0
+dataset_2 FBtr0083545 72 45 1 F 8 17.0 17.0
+dataset_2 FBtr0083693 72 4 1 F 1 27.0 27.0
+dataset_2 FBtr0083693 72 32 1 F 1 22.0 22.0
+dataset_2 FBtr0083693 72 33 1 F 1 21.0 21.0
+dataset_2 FBtr0083793 73 1 30 F 30 22.1 22.0
+dataset_2 FBtr0084597 84 9 1 F 1 17.0 17.0
+dataset_2 FBtr0084597 84 12 1 F 1 15.0 15.0
+dataset_2 FBtr0084597 84 48 1 F 1 18.0 18.0
+dataset_2 FBtr0085979 73 58 1 R 1 15.0 15.0
+dataset_2 FBtr0086006 73 41 1 F 1 23.0 23.0
+dataset_2 FBtr0086006 73 44 1 F 1 20.0 20.0
+dataset_2 FBtr0086015 74 1 1 F 1 19.0 19.0
+dataset_2 FBtr0086015 74 42 1 F 1 20.0 20.0
+dataset_2 FBtr0086190 73 6 1 F 1 18.0 18.0
+dataset_2 FBtr0086190 73 30 1 F 1 17.0 17.0
+dataset_2 FBtr0086234 72 33 1 R 1 24.0 24.0
+dataset_2 FBtr0086312 71 1 4 F 4 21.0 22.0
+dataset_2 FBtr0086312 71 3 4 F 4 21.0 21.5
+dataset_2 FBtr0086312 71 18 1 F 4 23.0 23.0
+dataset_2 FBtr0086312 71 20 1 F 4 22.0 22.0
+dataset_2 FBtr0086314 71 1 1 F 4 22.0 22.0
+dataset_2 FBtr0086314 71 3 4 F 4 25.3 25.0
+dataset_2 FBtr0086314 71 18 1 F 4 23.0 23.0
+dataset_2 FBtr0086332 72 7 1 F 1 18.0 18.0
+dataset_2 FBtr0086332 72 10 1 F 1 15.0 15.0
+dataset_2 FBtr0086334 73 4 1 F 1 24.0 24.0
+dataset_2 FBtr0086334 73 5 1 F 1 17.0 17.0
+dataset_2 FBtr0086334 73 16 1 F 1 16.0 16.0
+dataset_2 FBtr0086445 72 1 1 F 1 23.0 23.0
+dataset_2 FBtr0086445 72 16 1 F 1 16.0 16.0
+dataset_2 FBtr0086446 72 4 1 F 1 17.0 17.0
+dataset_2 FBtr0086446 72 20 1 F 1 21.0 21.0
+dataset_2 FBtr0086448 72 1 1 F 1 18.0 18.0
+dataset_2 FBtr0086448 72 14 1 F 1 18.0 18.0
+dataset_2 FBtr0086448 72 19 1 F 1 22.0 22.0
+dataset_2 FBtr0086603 72 28 1 F 1 23.0 23.0
+dataset_2 FBtr0086603 72 35 1 F 1 16.0 16.0
+dataset_2 FBtr0086603 72 37 1 F 1 18.0 18.0
+dataset_2 FBtr0086611 82 1 1 F 2 27.0 27.0
+dataset_2 FBtr0086611 82 12 2 F 2 16.5 16.5
+dataset_2 FBtr0086659 71 1 2 F 3 20.0 20.0
+dataset_2 FBtr0086659 71 3 3 F 3 23.3 25.0
+dataset_2 FBtr0086659 71 4 1 F 3 24.0 24.0
+dataset_2 FBtr0086659 71 7 1 F 3 16.0 16.0
+dataset_2 FBtr0086659 71 8 1 F 3 20.0 20.0
+dataset_2 FBtr0086659 71 18 2 F 3 23.0 23.0
+dataset_2 FBtr0086659 71 51 1 F 3 18.0 18.0
+dataset_2 FBtr0086898 73 7 1 F 1 17.0 17.0
+dataset_2 FBtr0086898 73 40 1 F 1 18.0 18.0
+dataset_2 FBtr0086908 72 1 4 F 4 19.8 19.0
+dataset_2 FBtr0086908 72 7 1 F 4 16.0 16.0
+dataset_2 FBtr0086965 72 1 7 F 7 19.6 20.0
+dataset_2 FBtr0087055 71 1 3 F 3 22.3 22.0
+dataset_2 FBtr0087055 71 3 2 F 3 24.5 24.5
+dataset_2 FBtr0087055 71 4 2 F 3 22.0 22.0
+dataset_2 FBtr0087055 71 7 3 F 3 16.0 16.0
+dataset_2 FBtr0087129 72 1 1 F 1 18.0 18.0
+dataset_2 FBtr0087129 72 7 1 F 1 23.0 23.0
+dataset_2 FBtr0087197 72 1 2 F 2 24.5 24.5
+dataset_2 FBtr0087197 72 4 2 F 2 26.0 26.0
+dataset_2 FBtr0087197 72 43 1 F 2 27.0 27.0
+dataset_2 FBtr0087198 72 15 1 F 1 16.0 16.0
+dataset_2 FBtr0087198 72 30 1 F 1 21.0 21.0
+dataset_2 FBtr0087688 73 12 2 F 2 16.0 16.0
+dataset_2 FBtr0087688 73 15 1 F 2 16.0 16.0
+dataset_2 FBtr0087961 72 5 1 F 1 24.0 24.0
+dataset_2 FBtr0087961 72 10 1 F 1 18.0 18.0
+dataset_2 FBtr0087962 72 3 1 F 1 26.0 26.0
+dataset_2 FBtr0087962 72 28 1 F 1 17.0 17.0
+dataset_2 FBtr0088087 73 1 1 F 1 18.0 18.0
+dataset_2 FBtr0088087 73 42 1 F 1 15.0 15.0
+dataset_2 FBtr0088156 87 6 1 F 1 18.0 18.0
+dataset_2 FBtr0088156 87 8 1 F 1 19.0 19.0
+dataset_2 FBtr0088156 87 41 1 F 1 18.0 18.0
+dataset_2 FBtr0089302 83 1 1 F 1 19.0 19.0
+dataset_2 FBtr0089302 83 12 1 F 1 16.0 16.0
+dataset_2 FBtr0089302 83 45 1 F 1 20.0 20.0
+dataset_2 FBtr0089613 71 1 4 F 4 23.3 22.5
+dataset_2 FBtr0089613 71 3 3 F 4 22.7 23.0
+dataset_2 FBtr0089613 71 19 1 F 4 22.0 22.0
+dataset_2 FBtr0089613 71 51 1 F 4 18.0 18.0
+dataset_2 FBtr0100842 73 1 28 F 28 22.0 22.0
+dataset_2 FBtr0100843 72 1 1 F 1 26.0 26.0
+dataset_2 FBtr0100843 72 4 1 F 1 26.0 26.0
+dataset_2 FBtr0100843 72 32 1 F 1 22.0 22.0
+dataset_2 FBtr0100845 84 11 1 F 1 15.0 15.0
+dataset_2 FBtr0100845 84 12 1 F 1 15.0 15.0
+dataset_2 FBtr0100846 73 16 1 F 1 16.0 16.0
+dataset_2 FBtr0100846 73 42 1 F 1 21.0 21.0
+dataset_2 FBtr0100847 72 28 1 F 1 23.0 23.0
+dataset_2 FBtr0100847 72 53 1 F 1 16.0 16.0
+dataset_2 FBtr0100854 65 1 14 F 14 18.8 20.0
+dataset_2 FBtr0100854 65 2 1 F 14 19.0 19.0
+dataset_2 FBtr0100854 65 19 1 F 14 21.0 21.0
+dataset_2 FBtr0100856 69 33 1 F 1 17.0 17.0
+dataset_2 FBtr0100856 69 47 1 F 1 18.0 18.0
+dataset_2 FBtr0100858 66 1 1 F 1 22.0 22.0
+dataset_2 FBtr0100858 66 3 1 F 1 17.0 17.0
+dataset_2 FBtr0100859 62 1 1 F 2 16.0 16.0
+dataset_2 FBtr0100859 62 5 1 F 2 16.0 16.0
+dataset_2 FBtr0100859 62 16 1 F 2 17.0 17.0
+dataset_2 FBtr0100859 62 29 1 F 2 18.0 18.0
+dataset_2 FBtr0100859 62 45 2 F 2 17.0 17.0
+dataset_2 FBtr0100860 66 1 1 F 2 17.0 17.0
+dataset_2 FBtr0100860 66 7 1 F 2 17.0 17.0
+dataset_2 FBtr0100860 66 11 1 F 2 17.0 17.0
+dataset_2 FBtr0100860 66 13 1 F 2 18.0 18.0
+dataset_2 FBtr0100860 66 18 2 F 2 17.0 17.0
+dataset_2 FBtr0100860 66 20 1 F 2 15.0 15.0
+dataset_2 FBtr0100860 66 46 1 F 2 17.0 17.0
+dataset_2 FBtr0100862 66 1 2 F 4 16.5 16.5
+dataset_2 FBtr0100862 66 6 2 F 4 20.0 20.0
+dataset_2 FBtr0100862 66 22 1 F 4 19.0 19.0
+dataset_2 FBtr0100862 66 44 4 F 4 20.0 20.0
+dataset_2 FBtr0100862 66 46 1 F 4 18.0 18.0
+dataset_2 FBtr0100862 66 48 2 F 4 18.5 18.5
+dataset_2 FBtr0100862 66 49 1 F 4 18.0 18.0
+dataset_2 FBtr0100864 71 1 8 F 8 18.5 18.0
+dataset_2 FBtr0100864 71 3 1 F 8 23.0 23.0
+dataset_2 FBtr0100864 71 8 1 F 8 18.0 18.0
+dataset_2 FBtr0100864 71 10 1 F 8 22.0 22.0
+dataset_2 FBtr0100864 71 11 1 F 8 20.0 20.0
+dataset_2 FBtr0100864 71 12 2 F 8 21.5 21.5
+dataset_2 FBtr0100864 71 13 1 F 8 24.0 24.0
+dataset_2 FBtr0100864 71 14 1 F 8 20.0 20.0
+dataset_2 FBtr0100864 71 15 3 F 8 19.7 21.0
+dataset_2 FBtr0100864 71 16 2 F 8 20.5 20.5
+dataset_2 FBtr0100864 71 19 1 F 8 18.0 18.0
+dataset_2 FBtr0100864 71 21 2 F 8 17.0 17.0
+dataset_2 FBtr0100864 71 44 2 F 8 16.0 16.0
+dataset_2 FBtr0100864 71 51 1 F 8 21.0 21.0
+dataset_2 FBtr0100864 71 56 1 F 8 16.0 16.0
+dataset_2 FBtr0100865 67 1 1 F 1 16.0 16.0
+dataset_2 FBtr0100865 67 19 1 F 1 19.0 19.0
+dataset_2 FBtr0100865 67 20 1 F 1 20.0 20.0
+dataset_2 FBtr0100865 67 23 1 F 1 17.0 17.0
+dataset_2 FBtr0100869 65 1 3 F 3 18.3 19.0
+dataset_2 FBtr0100869 65 12 1 F 3 16.0 16.0
+dataset_2 FBtr0100869 65 16 1 F 3 17.0 17.0
+dataset_2 FBtr0100869 65 17 1 F 3 20.0 20.0
+dataset_2 FBtr0100869 65 28 1 F 3 16.0 16.0
+dataset_2 FBtr0100869 65 30 2 F 3 20.5 20.5
+dataset_2 FBtr0100869 65 33 2 F 3 19.5 19.5
+dataset_2 FBtr0100869 65 36 1 F 3 18.0 18.0
+dataset_2 FBtr0100871 65 1 22 F 22 17.1 17.0
+dataset_2 FBtr0100871 65 15 1 F 22 23.0 23.0
+dataset_2 FBtr0100871 65 27 1 F 22 16.0 16.0
+dataset_2 FBtr0100872 64 1 49 F 49 18.8 18.0
+dataset_2 FBtr0100872 64 2 1 F 49 17.0 17.0
+dataset_2 FBtr0100872 64 5 1 F 49 18.0 18.0
+dataset_2 FBtr0100872 64 6 2 F 49 17.0 17.0
+dataset_2 FBtr0100872 64 7 3 F 49 17.3 16.0
+dataset_2 FBtr0100872 64 8 1 F 49 19.0 19.0
+dataset_2 FBtr0100872 64 9 2 F 49 19.5 19.5
+dataset_2 FBtr0100872 64 10 2 F 49 20.0 20.0
+dataset_2 FBtr0100872 64 11 1 F 49 16.0 16.0
+dataset_2 FBtr0100872 64 13 1 F 49 16.0 16.0
+dataset_2 FBtr0100872 64 15 5 F 49 22.0 22.0
+dataset_2 FBtr0100872 64 16 2 F 49 21.0 21.0
+dataset_2 FBtr0100872 64 18 2 F 49 19.5 19.5
+dataset_2 FBtr0100872 64 19 9 F 49 18.2 18.0
+dataset_2 FBtr0100872 64 22 3 F 49 16.0 16.0
+dataset_2 FBtr0100872 64 36 2 F 49 16.0 16.0
+dataset_2 FBtr0100872 64 42 1 F 49 18.0 18.0
+dataset_2 FBtr0100874 68 1 83 F 83 19.5 19.0
+dataset_2 FBtr0100874 68 3 4 F 83 17.3 17.0
+dataset_2 FBtr0100874 68 4 1 F 83 18.0 18.0
+dataset_2 FBtr0100874 68 5 1 F 83 17.0 17.0
+dataset_2 FBtr0100874 68 10 1 F 83 16.0 16.0
+dataset_2 FBtr0100874 68 13 1 F 83 23.0 23.0
+dataset_2 FBtr0100874 68 20 1 F 83 20.0 20.0
+dataset_2 FBtr0100875 67 3 1 F 1 18.0 18.0
+dataset_2 FBtr0100875 67 26 1 F 1 16.0 16.0
+dataset_2 FBtr0100875 67 48 1 F 1 16.0 16.0
+dataset_2 FBtr0100876 65 1 1 F 2 27.0 27.0
+dataset_2 FBtr0100876 65 6 1 F 2 16.0 16.0
+dataset_2 FBtr0100876 65 9 1 F 2 19.0 19.0
+dataset_2 FBtr0100876 65 13 2 F 2 15.5 15.5
+dataset_2 FBtr0100876 65 18 1 F 2 19.0 19.0
+dataset_2 FBtr0100876 65 19 1 F 2 18.0 18.0
+dataset_2 FBtr0100876 65 28 1 F 2 17.0 17.0
+dataset_2 FBtr0100876 65 29 1 F 2 19.0 19.0
+dataset_2 FBtr0100876 65 48 1 F 2 16.0 16.0
+dataset_2 FBtr0100878 66 23 1 F 3 21.0 21.0
+dataset_2 FBtr0100878 66 26 1 F 3 16.0 16.0
+dataset_2 FBtr0100878 66 27 1 F 3 15.0 15.0
+dataset_2 FBtr0100878 66 28 3 F 3 18.3 18.0
+dataset_2 FBtr0100878 66 30 2 F 3 20.0 20.0
+dataset_2 FBtr0100878 66 34 2 F 3 18.0 18.0
+dataset_2 FBtr0100878 66 35 1 F 3 15.0 15.0
+dataset_2 FBtr0100885 66 20 1 F 2 23.0 23.0
+dataset_2 FBtr0100885 66 46 2 F 2 17.0 17.0
+dataset_2 FBtr0100885 66 47 1 F 2 16.0 16.0
+dataset_2 FBtr0100887 65 1 1 F 1 21.0 21.0
+dataset_2 FBtr0100887 65 5 1 F 1 21.0 21.0
+dataset_2 FBtr0100887 65 6 1 F 1 20.0 20.0
+dataset_2 FBtr0100887 65 39 1 F 1 21.0 21.0
+dataset_2 FBtr0100889 73 3 1 F 1 19.0 19.0
+dataset_2 FBtr0100889 73 15 1 F 1 17.0 17.0
+dataset_2 FBtr0100889 73 23 1 F 1 20.0 20.0
+dataset_2 FBtr0100889 73 24 1 F 1 23.0 23.0
+dataset_2 FBtr0100889 73 27 1 F 1 15.0 15.0
+dataset_2 FBtr0100889 73 37 1 F 1 20.0 20.0
+dataset_2 FBtr0100889 73 42 1 F 1 17.0 17.0
+dataset_2 FBtr0100889 73 48 1 F 1 19.0 19.0
diff -r 000000000000 -r 1ad5d040f85f test-data/test/small_rna_map.bash
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test/small_rna_map.bash Mon Jul 10 10:31:49 2017 -0400
@@ -0,0 +1,43 @@
+#! /bin/bash
+# Execution command : bash small_rna_map.bash
+samtools view -h -o input.sam ../test-data/input.bam
+samfile="input.sam"
+cut -f2,3,4,5,6 ../test-data/output.tab > test-data.dat
+grep -e "^@SQ" $samfile > header.tab
+cat $samfile | perl -ne 'print unless /^@/ or ( (split /\t/)[1] != 0 and (split /\t/)[1] != 16 )' > output1.tab
+
+cat << EOF > pyscript.py
+lendic = {}
+for line in open("header.tab"):
+ fields = line[:-1].split()
+ lendic[fields[1][3:]] = fields[2][3:]
+readdic = {}
+for line in (open("output1.tab")):
+ fields = line[:-1].split()
+ key = "-".join([fields[2],fields[3],"F" if fields[1]=="0" else "R"])
+ try:
+ readdic[key] += 1
+ except KeyError:
+ readdic[key] = 1
+Out = open("output.tab", "w")
+Out.write("Chromosome\tChrom_length\tCoordinate\tNbr_reads\tPolarity\n")
+for key in sorted(readdic):
+ fields = key.split("-")
+ Chromosome, Coordinate, Polarity = fields[0], fields[1], fields[2]
+ Chrom_length = lendic[Chromosome]
+ Nbr_reads = str(readdic[key])
+ Out.write("\t".join([Chromosome, Chrom_length, Coordinate, Nbr_reads, Polarity]) )
+ Out.write("\n")
+Out.close
+EOF
+
+python ./pyscript.py
+rm output1.tab header.tab pyscript.py
+sort -k 1,1 -k 3,3n -k 5,5 output.tab -o output.tab
+if ! diff -q output.tab test-data.dat &>/dev/null; then
+ >&2 echo "different"
+else
+ >&2 echo "Test passed"
+fi
+
+rm output.tab input.sam test-data.dat