Exemplo n.º 1
0
def run_pathoscope(log, sam, sample, outdir):
    log.info("Running pathoscope")
    out_matrix = False
    verbose = False
    score_cutoff = 0.01
    exp_tag = sample
    ali_format = "sam"
    emEpsilon = 1e-7
    maxIter = 50
    PathoID.pathoscope_reassign(
        out_matrix, verbose, score_cutoff, exp_tag, ali_format, sam, outdir, emEpsilon, maxIter, True
    )
Exemplo n.º 2
0
	def test_conv_align2GRmat_bl8_2(self):
		currentdir = os.path.dirname(os.path.abspath(__file__))
		ali_file = currentdir + os.sep + 'data' + os.sep + 'ex2.bl8'
		aliFormat = 2
		(U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file,self.scoreCutoff,aliFormat)
		print U, NU, genomes, reads
		expectedU = {}
		self.assertEquals(expectedU, U, "Failed bl8 Example 2 Unique Reads Assertion")
		expectedNU = {0: [[0, 1], [703681821, 703681821], [0.5, 0.5]], 
			1: [[0, 1], [703681821, 703681821], [0.5, 0.5]], 
			2: [[2, 1], [703681821, 703681821], [0.5, 0.5]], 
			3: [[2, 1], [703681821, 703681821], [0.5, 0.5]], 
			4: [[2, 0, 1], [703681821, 703681821, 703681821], [0.3333, 0.3333, 0.3333]], 
			5: [[2, 0, 1], [703681821, 703681821, 703681821], [0.3333, 0.3333, 0.3333]], 
			6: [[2, 0, 1], [703681821, 703681821, 703681821], [0.3333, 0.3333, 0.3333]]}
		for read in expectedNU:
			self.assertEquals(expectedNU[read][0], NU[read][0], 
				"Failed bl8 Example 2 Non-Unique Read %d genome mapping Assertion" %read)
			self.assertEquals(expectedNU[read][1], NU[read][1], 
				"Failed bl8 Example 2 Non-Unique Read %d score Assertion" %read)
			for j in range(len(expectedNU[read][2])):
				self.assertAlmostEquals(NU[read][2][j], expectedNU[read][2][j], 4, 
					"Failed bl8 Example 2 Non-Unique Read %d proportion Assertion" %read)
		expectedGenomes = ['genome2', 'genome1', 'genome3']
		self.assertEquals(expectedGenomes, genomes, "Failed bl8 Example 2 Genomes Assertion")
		expectedReads = ['read1_12', 'read2_12', 'read3_13', 'read4_13', 'read5_123', 'read6_123', 'read7_123']
		self.assertEquals(expectedReads, reads, "Failed bl8 Example 2 Reads Assertion")
Exemplo n.º 3
0
	def test_pathoscope_em_4(self):
		U = {2: 1}
		NU = {0: [[0, 1], [50, 50], [0.5, 0.5]], 1: [[0, 1], [50, 50], [0.5, 0.5]], 
			3: [[2, 3], [50, 50], [0.5, 0.5]], 4: [[2, 0], [50, 50], [0.5, 0.5]]}
		### Genome hash
		genomes = {0:"genome3", 1:"genome4", 2:"genome1", 3:"genome2"}
		(initPi, pi, theta, NU) = PathoID.pathoscope_em(U, NU, genomes, self.maxIter, self.emEpsilon, self.verbose)
		print initPi, pi, theta, NU
		expectedInitPi = [0.3, 0.4, 0.2, 0.1]
		for j in range(len(expectedInitPi)):
			self.assertAlmostEquals(initPi[j], expectedInitPi[j], 4, "Failed EM Example 4 Initial PI Assertion j=%d" %j)
		expectedPi = [0.57, 0.20, 0.23, 0.0]
		for j in range(len(expectedPi)):
			self.assertAlmostEquals(pi[j], expectedPi[j], 2, "Failed EM Example 4 PI Assertion")
		expectedTheta = [0.72, 0.0, 0.28, 0.0]
		for j in range(len(expectedTheta)):
			self.assertAlmostEquals(theta[j], expectedTheta[j], 2, "Failed EM Example 4 Theta Assertion")
		expectedNU = {0: [[0, 1], [50, 50], [1.0, 0.0]], 1: [[0, 1], [50, 50], [1.0, 0.0]], 
			3: [[2, 3], [50, 50], [1.0, 0.0]], 4: [[2, 0], [50, 50], [0.14, 0.86]]}
		for read in expectedNU:
			self.assertEquals(NU[read][0], expectedNU[read][0], 
				"Failed EM Example 4 Non-Unique Read %d genome mapping Assertion" %read)
			self.assertEquals(NU[read][1], expectedNU[read][1], 
				"Failed EM Example 4 Non-Unique Read %d score Assertion" %read)
			for j in range(len(expectedNU[read][2])):
				self.assertAlmostEquals(NU[read][2][j], expectedNU[read][2][j], 2, 
					"Failed EM Example 4 Non-Unique Read %d proportion Assertion" %read)
Exemplo n.º 4
0
	def test_pathoscope_em_3(self):
		U = {0: 0, 1: 0, 2: 0, 3: 1, 4: 1}
		NU = {5: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]], 
			6: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]], 
			7: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]]}
		### Genome hash
		genomes = {0:"genome1", 1:"genome2", 2:"genome3"}
		(initPi, pi, theta, NU) = PathoID.pathoscope_em(U, NU, genomes, self.maxIter, self.emEpsilon, self.verbose)
		print initPi, pi, theta, NU
		expectedInitPi = [0.5, 0.375, 0.125]
		for j in range(len(expectedInitPi)):
			self.assertAlmostEquals(initPi[j], expectedInitPi[j], 4, "Failed EM Example 3 Initial PI Assertion j=%d" %j)
		expectedPi = [0.75, 0.25, 0.0]
		for j in range(len(expectedPi)):
			self.assertAlmostEquals(pi[j], expectedPi[j], 2, "Failed EM Example 3 PI Assertion")
		expectedTheta = [1.0, 0.0, 0.0]
		for j in range(len(expectedTheta)):
			self.assertAlmostEquals(theta[j], expectedTheta[j], 2, "Failed EM Example 3 Theta Assertion")
		expectedNU = {5: [[0, 1, 2], [33, 33, 33], [1.0, 0.0, 0.0]], 
			6: [[0, 1, 2], [33, 33, 33], [1.0, 0.0, 0.0]], 
			7: [[0, 1, 2], [33, 33, 33], [1.0, 0.0, 0.0]]}
		for read in expectedNU:
			self.assertEquals(NU[read][0], expectedNU[read][0], 
				"Failed EM Example 3 Non-Unique Read %d genome mapping Assertion" %read)
			self.assertEquals(NU[read][1], expectedNU[read][1], 
				"Failed EM Example 3 Non-Unique Read %d score Assertion" %read)
			for j in range(len(expectedNU[read][2])):
				self.assertAlmostEquals(NU[read][2][j], expectedNU[read][2][j], 2, 
					"Failed EM Example 3 Non-Unique Read %d proportion Assertion" %read)
Exemplo n.º 5
0
 def test_pathoscope_em_2(self):
     U = {}
     NU = {
         0: [[0, 1], [50, 50], [0.5, 0.5]],
         1: [[0, 1], [50, 50], [0.5, 0.5]],
         2: [[0, 2], [50, 50], [0.5, 0.5]],
         3: [[0, 2], [50, 50], [0.5, 0.5]],
         4: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]],
         5: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]],
         6: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]]
     }
     ### Genome hash
     genomes = {0: "genome1", 1: "genome2", 2: "genome3"}
     (initPi, pi, theta,
      NU) = PathoID.pathoscope_em(U, NU, genomes, self.maxIter,
                                  self.emEpsilon, self.verbose)
     print initPi, pi, theta, NU
     expectedInitPi = [0.4286, 0.2857, 0.2857]
     for j in range(len(expectedInitPi)):
         self.assertAlmostEquals(
             initPi[j], expectedInitPi[j], 4,
             "Failed EM Example 2 Initial PI Assertion j=%d" % j)
     expectedPi = [1.0, 0.0, 0.0]
     for j in range(len(expectedPi)):
         self.assertAlmostEquals(pi[j], expectedPi[j], 4,
                                 "Failed EM Example 2 PI Assertion")
     expectedTheta = [1.0, 0.0, 0.0]
     for j in range(len(expectedTheta)):
         self.assertAlmostEquals(theta[j], expectedTheta[j], 4,
                                 "Failed EM Example 2 Theta Assertion")
     expectedNU = {
         0: [[0, 1], [50, 50], [1.0, 0.0]],
         1: [[0, 1], [50, 50], [1.0, 0.0]],
         2: [[0, 2], [50, 50], [1.0, 0.0]],
         3: [[0, 2], [50, 50], [1.0, 0.0]],
         4: [[0, 1, 2], [33, 33, 33], [1.0, 0.0, 0.0]],
         5: [[0, 1, 2], [33, 33, 33], [1.0, 0.0, 0.0]],
         6: [[0, 1, 2], [33, 33, 33], [1.0, 0.0, 0.0]]
     }
     for read in expectedNU:
         self.assertEquals(
             NU[read][0], expectedNU[read][0],
             "Failed EM Example 2 Non-Unique Read %d genome mapping Assertion"
             % read)
         self.assertEquals(
             NU[read][1], expectedNU[read][1],
             "Failed EM Example 2 Non-Unique Read %d score Assertion" %
             read)
         for j in range(len(expectedNU[read][2])):
             self.assertAlmostEquals(
                 NU[read][2][j], expectedNU[read][2][j], 4,
                 "Failed EM Example 2 Non-Unique Read %d proportion Assertion"
                 % read)
Exemplo n.º 6
0
 def test_pathoscope_em_4(self):
     U = {2: 1}
     NU = {
         0: [[0, 1], [50, 50], [0.5, 0.5]],
         1: [[0, 1], [50, 50], [0.5, 0.5]],
         3: [[2, 3], [50, 50], [0.5, 0.5]],
         4: [[2, 0], [50, 50], [0.5, 0.5]]
     }
     ### Genome hash
     genomes = {0: "genome3", 1: "genome4", 2: "genome1", 3: "genome2"}
     (initPi, pi, theta,
      NU) = PathoID.pathoscope_em(U, NU, genomes, self.maxIter,
                                  self.emEpsilon, self.verbose)
     print initPi, pi, theta, NU
     expectedInitPi = [0.3, 0.4, 0.2, 0.1]
     for j in range(len(expectedInitPi)):
         self.assertAlmostEquals(
             initPi[j], expectedInitPi[j], 4,
             "Failed EM Example 4 Initial PI Assertion j=%d" % j)
     expectedPi = [0.57, 0.20, 0.23, 0.0]
     for j in range(len(expectedPi)):
         self.assertAlmostEquals(pi[j], expectedPi[j], 2,
                                 "Failed EM Example 4 PI Assertion")
     expectedTheta = [0.72, 0.0, 0.28, 0.0]
     for j in range(len(expectedTheta)):
         self.assertAlmostEquals(theta[j], expectedTheta[j], 2,
                                 "Failed EM Example 4 Theta Assertion")
     expectedNU = {
         0: [[0, 1], [50, 50], [1.0, 0.0]],
         1: [[0, 1], [50, 50], [1.0, 0.0]],
         3: [[2, 3], [50, 50], [1.0, 0.0]],
         4: [[2, 0], [50, 50], [0.14, 0.86]]
     }
     for read in expectedNU:
         self.assertEquals(
             NU[read][0], expectedNU[read][0],
             "Failed EM Example 4 Non-Unique Read %d genome mapping Assertion"
             % read)
         self.assertEquals(
             NU[read][1], expectedNU[read][1],
             "Failed EM Example 4 Non-Unique Read %d score Assertion" %
             read)
         for j in range(len(expectedNU[read][2])):
             self.assertAlmostEquals(
                 NU[read][2][j], expectedNU[read][2][j], 2,
                 "Failed EM Example 4 Non-Unique Read %d proportion Assertion"
                 % read)
Exemplo n.º 7
0
 def test_conv_align2GRmat_bl8_2(self):
     currentdir = os.path.dirname(os.path.abspath(__file__))
     ali_file = currentdir + os.sep + 'data' + os.sep + 'ex2.bl8'
     aliFormat = 2
     (U, NU, genomes,
      reads) = PathoID.conv_align2GRmat(ali_file, self.scoreCutoff,
                                        aliFormat)
     print U, NU, genomes, reads
     expectedU = {}
     self.assertEquals(expectedU, U,
                       "Failed bl8 Example 2 Unique Reads Assertion")
     expectedNU = {
         0: [[0, 1], [703681821, 703681821], [0.5, 0.5]],
         1: [[0, 1], [703681821, 703681821], [0.5, 0.5]],
         2: [[2, 1], [703681821, 703681821], [0.5, 0.5]],
         3: [[2, 1], [703681821, 703681821], [0.5, 0.5]],
         4: [[2, 0, 1], [703681821, 703681821, 703681821],
             [0.3333, 0.3333, 0.3333]],
         5: [[2, 0, 1], [703681821, 703681821, 703681821],
             [0.3333, 0.3333, 0.3333]],
         6: [[2, 0, 1], [703681821, 703681821, 703681821],
             [0.3333, 0.3333, 0.3333]]
     }
     for read in expectedNU:
         self.assertEquals(
             expectedNU[read][0], NU[read][0],
             "Failed bl8 Example 2 Non-Unique Read %d genome mapping Assertion"
             % read)
         self.assertEquals(
             expectedNU[read][1], NU[read][1],
             "Failed bl8 Example 2 Non-Unique Read %d score Assertion" %
             read)
         for j in range(len(expectedNU[read][2])):
             self.assertAlmostEquals(
                 NU[read][2][j], expectedNU[read][2][j], 4,
                 "Failed bl8 Example 2 Non-Unique Read %d proportion Assertion"
                 % read)
     expectedGenomes = ['genome2', 'genome1', 'genome3']
     self.assertEquals(expectedGenomes, genomes,
                       "Failed bl8 Example 2 Genomes Assertion")
     expectedReads = [
         'read1_12', 'read2_12', 'read3_13', 'read4_13', 'read5_123',
         'read6_123', 'read7_123'
     ]
     self.assertEquals(expectedReads, reads,
                       "Failed bl8 Example 2 Reads Assertion")
Exemplo n.º 8
0
 def test_conv_align2GRmat_sam_4(self):
     currentdir = os.path.dirname(os.path.abspath(__file__))
     ali_file = currentdir + os.sep + 'data' + os.sep + 'ex4.sam'
     aliFormat = 1
     (U, NU, genomes,
      reads) = PathoID.conv_align2GRmat(ali_file, self.scoreCutoff,
                                        aliFormat)
     print U, NU, genomes, reads
     expectedU = {2: 0}
     self.assertEquals(expectedU, U,
                       "Failed sam Example 4 Unique Reads Assertion")
     expectedNU = {
         0: [[0, 1], [21, 21], [0.5, 0.5]],
         1: [[1, 0], [21, 21], [0.5, 0.5]],
         3: [[2, 3], [21, 21], [0.5, 0.5]],
         4: [[2, 1], [21, 21], [0.5, 0.5]]
     }
     for read in expectedNU:
         self.assertEquals(
             expectedNU[read][0], NU[read][0],
             "Failed sam Example 4 Non-Unique Read %d genome mapping Assertion"
             % read)
         self.assertEquals(
             expectedNU[read][1], NU[read][1],
             "Failed sam Example 4 Non-Unique Read %d score Assertion" %
             read)
         for j in range(len(expectedNU[read][2])):
             self.assertAlmostEquals(
                 NU[read][2][j], expectedNU[read][2][j], 4,
                 "Failed sam Example 4 Non-Unique Read %d proportion Assertion"
                 % read)
     expectedGenomes = ['genome4', 'genome3', 'genome1', 'genome2']
     self.assertEquals(expectedGenomes, genomes,
                       "Failed sam Example 4 Genomes Assertion")
     expectedReads = [
         'read1_34', 'read2_34', 'read3_4', 'read4_12', 'read5_13'
     ]
     self.assertEquals(expectedReads, reads,
                       "Failed sam Example 4 Reads Assertion")
Exemplo n.º 9
0
 def test_conv_align2GRmat_sam_3(self):
     currentdir = os.path.dirname(os.path.abspath(__file__))
     ali_file = currentdir + os.sep + 'data' + os.sep + 'ex3.sam'
     aliFormat = 1
     (U, NU, genomes,
      reads) = PathoID.conv_align2GRmat(ali_file, self.scoreCutoff,
                                        aliFormat)
     print U, NU, genomes, reads
     expectedU = {0: 0, 1: 0, 2: 0, 3: 1, 4: 1}
     self.assertEquals(expectedU, U,
                       "Failed sam Example 3 Unique Reads Assertion")
     expectedNU = {
         5: [[2, 0, 1], [21, 21, 21], [0.3333, 0.3333, 0.3333]],
         6: [[1, 0, 2], [21, 21, 21], [0.3333, 0.3333, 0.3333]],
         7: [[2, 1, 0], [21, 21, 21], [0.3333, 0.3333, 0.3333]]
     }
     for read in expectedNU:
         self.assertEquals(
             expectedNU[read][0], NU[read][0],
             "Failed sam Example 3 Non-Unique Read %d genome mapping Assertion"
             % read)
         self.assertEquals(
             expectedNU[read][1], NU[read][1],
             "Failed sam Example 3 Non-Unique Read %d score Assertion" %
             read)
         for j in range(len(expectedNU[read][2])):
             self.assertAlmostEquals(
                 NU[read][2][j], expectedNU[read][2][j], 4,
                 "Failed sam Example 3 Non-Unique Read %d proportion Assertion"
                 % read)
     expectedGenomes = ['genome1', 'genome2', 'genome3']
     self.assertEquals(expectedGenomes, genomes,
                       "Failed sam Example 3 Genomes Assertion")
     expectedReads = [
         'read1_1', 'read2_1', 'read3_1', 'read4_3', 'read5_2', 'read6_123',
         'read7_123', 'read8_123'
     ]
     self.assertEquals(expectedReads, reads,
                       "Failed sam Example 3 Reads Assertion")
Exemplo n.º 10
0
	def test_conv_align2GRmat_sam_4(self):
		currentdir = os.path.dirname(os.path.abspath(__file__))
		ali_file = currentdir + os.sep + 'data' + os.sep + 'ex4.sam'
		aliFormat = 1
		(U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file,self.scoreCutoff,aliFormat)
		print U, NU, genomes, reads
		expectedU = {2: 0}
		self.assertEquals(expectedU, U, "Failed sam Example 4 Unique Reads Assertion")
		expectedNU = {0: [[0, 1], [21, 21], [0.5, 0.5]], 1: [[1, 0], [21, 21], [0.5, 0.5]], 
			3: [[2, 3], [21, 21], [0.5, 0.5]], 4: [[2, 1], [21, 21], [0.5, 0.5]]}
		for read in expectedNU:
			self.assertEquals(expectedNU[read][0], NU[read][0], 
				"Failed sam Example 4 Non-Unique Read %d genome mapping Assertion" %read)
			self.assertEquals(expectedNU[read][1], NU[read][1], 
				"Failed sam Example 4 Non-Unique Read %d score Assertion" %read)
			for j in range(len(expectedNU[read][2])):
				self.assertAlmostEquals(NU[read][2][j], expectedNU[read][2][j], 4, 
					"Failed sam Example 4 Non-Unique Read %d proportion Assertion" %read)
		expectedGenomes = ['genome4', 'genome3', 'genome1', 'genome2']
		self.assertEquals(expectedGenomes, genomes, "Failed sam Example 4 Genomes Assertion")
		expectedReads = ['read1_34', 'read2_34', 'read3_4', 'read4_12', 'read5_13']
		self.assertEquals(expectedReads, reads, "Failed sam Example 4 Reads Assertion")
Exemplo n.º 11
0
 def test_conv_align2GRmat_gsam_1(self):
     currentdir = os.path.dirname(os.path.abspath(__file__))
     ali_file = currentdir + os.sep + 'data' + os.sep + 'ex1.g.sam'
     aliFormat = 0
     (U, NU, genomes,
      reads) = PathoID.conv_align2GRmat(ali_file, self.scoreCutoff,
                                        aliFormat)
     print U, NU, genomes, reads
     expectedU = {0: 0, 1: 0}
     self.assertEquals(expectedU, U,
                       "Failed gnusam Example 1 Unique Reads Assertion")
     expectedNU = {
         2: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]],
         3: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]],
         4: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]]
     }
     for read in expectedNU:
         self.assertEquals(
             expectedNU[read][0], NU[read][0],
             "Failed gnusam Example 1 Non-Unique Read %d genome mapping Assertion"
             % read)
         self.assertEquals(
             expectedNU[read][1], NU[read][1],
             "Failed gnusam Example 1 Non-Unique Read %d score Assertion" %
             read)
         for j in range(len(expectedNU[read][2])):
             self.assertAlmostEquals(
                 NU[read][2][j], expectedNU[read][2][j], 4,
                 "Failed gnusam Example 1 Non-Unique Read %d proportion Assertion"
                 % read)
     expectedGenomes = ['genome1', 'genome2', 'genome3']
     self.assertEquals(expectedGenomes, genomes,
                       "Failed gnusam Example 1 Genomes Assertion")
     expectedReads = [
         'read1_1', 'read2_1', 'read3_123', 'read4_123', 'read5_123'
     ]
     self.assertEquals(expectedReads, reads,
                       "Failed gnusam Example 1 Reads Assertion")
Exemplo n.º 12
0
	def test_conv_align2GRmat_sam_3(self):
		currentdir = os.path.dirname(os.path.abspath(__file__))
		ali_file = currentdir + os.sep + 'data' + os.sep + 'ex3.sam'
		aliFormat = 1
		(U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file,self.scoreCutoff,aliFormat)
		print U, NU, genomes, reads
		expectedU = {0: 0, 1: 0, 2: 0, 3: 1, 4: 1}
		self.assertEquals(expectedU, U, "Failed sam Example 3 Unique Reads Assertion")
		expectedNU = {5: [[2, 0, 1], [21, 21, 21], [0.3333, 0.3333, 0.3333]], 
			6: [[1, 0, 2], [21, 21, 21], [0.3333, 0.3333, 0.3333]], 
			7: [[2, 1, 0], [21, 21, 21], [0.3333, 0.3333, 0.3333]]}
		for read in expectedNU:
			self.assertEquals(expectedNU[read][0], NU[read][0], 
				"Failed sam Example 3 Non-Unique Read %d genome mapping Assertion" %read)
			self.assertEquals(expectedNU[read][1], NU[read][1], 
				"Failed sam Example 3 Non-Unique Read %d score Assertion" %read)
			for j in range(len(expectedNU[read][2])):
				self.assertAlmostEquals(NU[read][2][j], expectedNU[read][2][j], 4, 
					"Failed sam Example 3 Non-Unique Read %d proportion Assertion" %read)
		expectedGenomes = ['genome1', 'genome2', 'genome3']
		self.assertEquals(expectedGenomes, genomes, "Failed sam Example 3 Genomes Assertion")
		expectedReads = ['read1_1', 'read2_1', 'read3_1', 'read4_3', 'read5_2', 'read6_123', 'read7_123', 'read8_123']
		self.assertEquals(expectedReads, reads, "Failed sam Example 3 Reads Assertion")
Exemplo n.º 13
0
	def test_conv_align2GRmat_gsam_1(self):
		currentdir = os.path.dirname(os.path.abspath(__file__))
		ali_file = currentdir + os.sep + 'data' + os.sep + 'ex1.g.sam'
		aliFormat = 0
		(U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file,self.scoreCutoff,aliFormat)
		print U, NU, genomes, reads
		expectedU = {0: 0, 1: 0}
		self.assertEquals(expectedU, U, "Failed gnusam Example 1 Unique Reads Assertion")
		expectedNU = {2: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]], 
					3: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]], 
					4: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]]}
		for read in expectedNU:
			self.assertEquals(expectedNU[read][0], NU[read][0], 
				"Failed gnusam Example 1 Non-Unique Read %d genome mapping Assertion" %read)
			self.assertEquals(expectedNU[read][1], NU[read][1], 
				"Failed gnusam Example 1 Non-Unique Read %d score Assertion" %read)
			for j in range(len(expectedNU[read][2])):
				self.assertAlmostEquals(NU[read][2][j], expectedNU[read][2][j], 4, 
					"Failed gnusam Example 1 Non-Unique Read %d proportion Assertion" %read)
		expectedGenomes = ['genome1', 'genome2', 'genome3']
		self.assertEquals(expectedGenomes, genomes, "Failed gnusam Example 1 Genomes Assertion")
		expectedReads = ['read1_1', 'read2_1', 'read3_123', 'read4_123', 'read5_123']
		self.assertEquals(expectedReads, reads, "Failed gnusam Example 1 Reads Assertion")
Exemplo n.º 14
0
                    default='testset',
                    dest='exp_tag',
                    help='Experiment tag')
parser.add_argument('-outdir',
                    action='store',
                    default='.',
                    dest='outdir',
                    help='Output Directory')
parser.add_argument('--version', action='version', version='%(prog)s 1.0')
parser.add_argument('-t',
                    action='store',
                    default='sam',
                    dest='ali_format',
                    help='Alignment Format: sam/bl8/gnu-sam')
parser.add_argument('-f',
                    action='store',
                    dest='ali_file',
                    required=True,
                    help='Alignment file path')
inputArgs = parser.parse_args()

start = time()
PathoID.pathoscope_reassign(inputArgs.out_matrix, inputArgs.verbose,
                            inputArgs.score_cutoff, inputArgs.exp_tag,
                            inputArgs.ali_format, inputArgs.ali_file,
                            inputArgs.outdir, inputArgs.emEpsilon,
                            inputArgs.maxIter, not (inputArgs.noalign))
elapsed = time() - start
if inputArgs.verbose:
    print "EM Elapsed Time: %d" % (elapsed)
Exemplo n.º 15
0
parser.add_argument('-o', action='store_true', default=False, dest='out_matrix',
					help='Output alignment matrix')
parser.add_argument('-noUpdatedAlignFile', action='store_true', default=False, dest='noalign',
					help='Do not generate an updated alignment file')
parser.add_argument('-verbose', action='store_true', default=False, dest='verbose',
					help='Prints verbose text while running')
parser.add_argument('-s', action='store', default=0.01, type=float,
					dest='score_cutoff', help='Score Cutoff')
parser.add_argument('-emEpsilon', action='store', default=1e-7, type=float,
					dest='emEpsilon', help='EM Algorithm Epsilon cutoff')
parser.add_argument('-maxIter', action='store', default=50, type=int,
					dest='maxIter', help='EM Algorithm maximum iterations')
parser.add_argument('-e', action='store', default='testset', dest='exp_tag',
					help='Experiment tag')
parser.add_argument('-outdir', action='store', default='.', dest='outdir',
					help='Output Directory')
parser.add_argument('--version', action='version', version='%(prog)s 1.0')
parser.add_argument('-t', action='store', default='sam', dest='ali_format',
					help='Alignment Format: sam/bl8/gnu-sam')
parser.add_argument('-f', action='store', dest='ali_file', required=True,
					help='Alignment file path')
inputArgs = parser.parse_args()

start = time();
PathoID.pathoscope_reassign(inputArgs.out_matrix, inputArgs.verbose, 
	inputArgs.score_cutoff, inputArgs.exp_tag, inputArgs.ali_format, inputArgs.ali_file,
	inputArgs.outdir, inputArgs.emEpsilon, inputArgs.maxIter, not(inputArgs.noalign))
elapsed = time() - start;
if inputArgs.verbose:
	print "EM Elapsed Time: %d" % (elapsed)