Exemple #1
0
 def test_group(self):
     """BarcodeCounter: check grouping of barcode sequences
     """
     bc = BarcodeCounter()
     bc.count_barcode("TATGCGCGGTA",lane=1,incr=285302)
     bc.count_barcode("CATGCGCGGTA",lane=1,incr=8532)
     bc.count_barcode("GATGCGCGGTA",lane=1,incr=5321)
     bc.count_barcode("GCTGCGCGGTA",lane=1,incr=7853)
     bc.count_barcode("GCTGCGCGGTC",lane=1,incr=325394)
     bc.count_barcode("GTCACGCGGTA",lane=2,incr=296201)
     bc.count_barcode("GTCACGCGGTT",lane=2,incr=2853)
     bc.count_barcode("GTCACGCTGTT",lane=2,incr=278539)
     ## 2 mismatches across all lanes
     groups = bc.group(None,mismatches=2)
     ##"GCTGCGCGGTC","GCTGCGCGGTA","GATGCGCGGTA" = 338568
     ##"TATGCGCGGTA","CATGCGCGGTA" = 293834
     ##"GTCACGCGGTA","GTCACGCTGTT","GTCACGCGGTT" = 577593
     self.assertEqual(len(groups),3)
     self.assertEqual(groups[0].reference,"GTCACGCGGTA")
     self.assertEqual(groups[0].sequences,["GTCACGCGGTA",
                                           "GTCACGCTGTT",
                                           "GTCACGCGGTT"])
     self.assertEqual(groups[0].counts,577593)
     self.assertEqual(groups[1].reference,"GCTGCGCGGTC")
     self.assertEqual(groups[1].sequences,["GCTGCGCGGTC",
                                           "GCTGCGCGGTA",
                                           "GATGCGCGGTA"])
     self.assertEqual(groups[1].counts,338568)
     self.assertEqual(groups[2].reference,"TATGCGCGGTA")
     self.assertEqual(groups[2].sequences,["TATGCGCGGTA",
                                           "CATGCGCGGTA"])
     self.assertEqual(groups[2].counts,293834)
     ## 1 mismatch across all lanes
     groups = bc.group(None,mismatches=1)
     ##"TATGCGCGGTA","CATGCGCGGTA","GATGCGCGGTA" = 299155
     ##"GCTGCGCGGTC","GCTGCGCGGTA" = 333247
     ##"GTCACGCGGTA","GTCACGCGGTT" = 299054
     ##"GTCACGCTGTT" = 278539
     self.assertEqual(len(groups),4)
     self.assertEqual(groups[0].reference,"GCTGCGCGGTC")
     self.assertEqual(groups[0].sequences,["GCTGCGCGGTC",
                                           "GCTGCGCGGTA"])
     self.assertEqual(groups[0].counts,333247)
     self.assertEqual(groups[1].reference,"TATGCGCGGTA")
     self.assertEqual(groups[1].sequences,["TATGCGCGGTA",
                                           "CATGCGCGGTA",
                                           "GATGCGCGGTA"])
     self.assertEqual(groups[1].counts,299155)
     self.assertEqual(groups[2].reference,"GTCACGCGGTA")
     self.assertEqual(groups[2].sequences,["GTCACGCGGTA",
                                           "GTCACGCGGTT"])
     self.assertEqual(groups[2].counts,299054)
     self.assertEqual(groups[3].reference,"GTCACGCTGTT")
     self.assertEqual(groups[3].sequences,["GTCACGCTGTT",])
     self.assertEqual(groups[3].counts,278539)
     ## 1 mismatch in lane 1
     groups = bc.group(1,mismatches=1)
     ##"TATGCGCGGTA","CATGCGCGGTA","GATGCGCGGTA" = 299155
     ##"GCTGCGCGGTC","GCTGCGCGGTA" = 333247
     self.assertEqual(len(groups),2)
     self.assertEqual(groups[0].reference,"GCTGCGCGGTC")
     self.assertEqual(groups[0].sequences,["GCTGCGCGGTC",
                                           "GCTGCGCGGTA"])
     self.assertEqual(groups[0].counts,333247)
     self.assertEqual(groups[1].reference,"TATGCGCGGTA")
     self.assertEqual(groups[1].sequences,["TATGCGCGGTA",
                                           "CATGCGCGGTA",
                                           "GATGCGCGGTA"])
     self.assertEqual(groups[1].counts,299155)
     ## 2 mismatches across all lanes
     groups = bc.group(None,mismatches=2)
     ##"GCTGCGCGGTC","GCTGCGCGGTA","GATGCGCGGTA" = 338568
     ##"TATGCGCGGTA","CATGCGCGGTA" = 293834
     ##"GTCACGCGGTA","GTCACGCTGTT","GTCACGCGGTT" = 577593
     self.assertEqual(len(groups),3)
     self.assertEqual(groups[0].reference,"GTCACGCGGTA")
     self.assertEqual(groups[0].sequences,["GTCACGCGGTA",
                                           "GTCACGCTGTT",
                                           "GTCACGCGGTT"])
     self.assertEqual(groups[0].counts,577593)
     self.assertEqual(groups[1].reference,"GCTGCGCGGTC")
     self.assertEqual(groups[1].sequences,["GCTGCGCGGTC",
                                           "GCTGCGCGGTA",
                                           "GATGCGCGGTA"])
     self.assertEqual(groups[1].counts,338568)
     self.assertEqual(groups[2].reference,"TATGCGCGGTA")
     self.assertEqual(groups[2].sequences,["TATGCGCGGTA",
                                           "CATGCGCGGTA"])
     self.assertEqual(groups[2].counts,293834)
 def test_group(self):
     """BarcodeCounter: check grouping of barcode sequences
     """
     bc = BarcodeCounter()
     bc.count_barcode("TATGCGCGGTA",lane=1,incr=285302)
     bc.count_barcode("CATGCGCGGTA",lane=1,incr=8532)
     bc.count_barcode("GATGCGCGGTA",lane=1,incr=5321)
     bc.count_barcode("GCTGCGCGGTA",lane=1,incr=7853)
     bc.count_barcode("GCTGCGCGGTC",lane=1,incr=325394)
     bc.count_barcode("GTCACGCGGTA",lane=2,incr=296201)
     bc.count_barcode("GTCACGCGGTT",lane=2,incr=2853)
     bc.count_barcode("GTCACGCTGTT",lane=2,incr=278539)
     ## 2 mismatches across all lanes
     groups = bc.group(None,mismatches=2)
     ##"GCTGCGCGGTC","GCTGCGCGGTA","GATGCGCGGTA" = 338568
     ##"TATGCGCGGTA","CATGCGCGGTA" = 293834
     ##"GTCACGCGGTA","GTCACGCTGTT","GTCACGCGGTT" = 577593
     self.assertEqual(len(groups),3)
     self.assertEqual(groups[0].reference,"GTCACGCGGTA")
     self.assertEqual(groups[0].sequences,["GTCACGCGGTA",
                                           "GTCACGCTGTT",
                                           "GTCACGCGGTT"])
     self.assertEqual(groups[0].counts,577593)
     self.assertEqual(groups[1].reference,"GCTGCGCGGTC")
     self.assertEqual(groups[1].sequences,["GCTGCGCGGTC",
                                           "GCTGCGCGGTA",
                                           "GATGCGCGGTA"])
     self.assertEqual(groups[1].counts,338568)
     self.assertEqual(groups[2].reference,"TATGCGCGGTA")
     self.assertEqual(groups[2].sequences,["TATGCGCGGTA",
                                           "CATGCGCGGTA"])
     self.assertEqual(groups[2].counts,293834)
     ## 1 mismatch across all lanes
     groups = bc.group(None,mismatches=1)
     ##"TATGCGCGGTA","CATGCGCGGTA","GATGCGCGGTA" = 299155
     ##"GCTGCGCGGTC","GCTGCGCGGTA" = 333247
     ##"GTCACGCGGTA","GTCACGCGGTT" = 299054
     ##"GTCACGCTGTT" = 278539
     self.assertEqual(len(groups),4)
     self.assertEqual(groups[0].reference,"GCTGCGCGGTC")
     self.assertEqual(groups[0].sequences,["GCTGCGCGGTC",
                                           "GCTGCGCGGTA"])
     self.assertEqual(groups[0].counts,333247)
     self.assertEqual(groups[1].reference,"TATGCGCGGTA")
     self.assertEqual(groups[1].sequences,["TATGCGCGGTA",
                                           "CATGCGCGGTA",
                                           "GATGCGCGGTA"])
     self.assertEqual(groups[1].counts,299155)
     self.assertEqual(groups[2].reference,"GTCACGCGGTA")
     self.assertEqual(groups[2].sequences,["GTCACGCGGTA",
                                           "GTCACGCGGTT"])
     self.assertEqual(groups[2].counts,299054)
     self.assertEqual(groups[3].reference,"GTCACGCTGTT")
     self.assertEqual(groups[3].sequences,["GTCACGCTGTT",])
     self.assertEqual(groups[3].counts,278539)
     ## 1 mismatch in lane 1
     groups = bc.group(1,mismatches=1)
     ##"TATGCGCGGTA","CATGCGCGGTA","GATGCGCGGTA" = 299155
     ##"GCTGCGCGGTC","GCTGCGCGGTA" = 333247
     self.assertEqual(len(groups),2)
     self.assertEqual(groups[0].reference,"GCTGCGCGGTC")
     self.assertEqual(groups[0].sequences,["GCTGCGCGGTC",
                                           "GCTGCGCGGTA"])
     self.assertEqual(groups[0].counts,333247)
     self.assertEqual(groups[1].reference,"TATGCGCGGTA")
     self.assertEqual(groups[1].sequences,["TATGCGCGGTA",
                                           "CATGCGCGGTA",
                                           "GATGCGCGGTA"])
     self.assertEqual(groups[1].counts,299155)
     ## 2 mismatches across all lanes
     groups = bc.group(None,mismatches=2)
     ##"GCTGCGCGGTC","GCTGCGCGGTA","GATGCGCGGTA" = 338568
     ##"TATGCGCGGTA","CATGCGCGGTA" = 293834
     ##"GTCACGCGGTA","GTCACGCTGTT","GTCACGCGGTT" = 577593
     self.assertEqual(len(groups),3)
     self.assertEqual(groups[0].reference,"GTCACGCGGTA")
     self.assertEqual(groups[0].sequences,["GTCACGCGGTA",
                                           "GTCACGCTGTT",
                                           "GTCACGCGGTT"])
     self.assertEqual(groups[0].counts,577593)
     self.assertEqual(groups[1].reference,"GCTGCGCGGTC")
     self.assertEqual(groups[1].sequences,["GCTGCGCGGTC",
                                           "GCTGCGCGGTA",
                                           "GATGCGCGGTA"])
     self.assertEqual(groups[1].counts,338568)
     self.assertEqual(groups[2].reference,"TATGCGCGGTA")
     self.assertEqual(groups[2].sequences,["TATGCGCGGTA",
                                           "CATGCGCGGTA"])
     self.assertEqual(groups[2].counts,293834)