Beispiel #1
0
 def testOneSplit4(self):
   """ lots of duplicates
   """
   d = [(1., 0), (1.1, 0), (1.2, 0), (1.2, 1), (1.4, 0), (1.4, 0), (1.6, 0), (2., 1), (2.1, 1),
        (2.1, 1), (2.1, 1), (2.1, 1), (2.2, 1), (2.3, 1)]
   varValues, resCodes = zip(*d)
   nPossibleRes = 2
   res = Quantize.FindVarQuantBound(varValues, resCodes, nPossibleRes)
   target = (1.8, 0.68939)
   assert list(map(lambda x,y:Quantize.feq(x,y,1e-4),res,target))==[1,1],\
          'result comparison failed: %s != %s'%(res,target)
Beispiel #2
0
 def testOneSplit5(self):
   """ same as testOneSplit1 data, but out of order
   """
   d = [(1., 0), (1.1, 0), (2.2, 1), (1.2, 0), (1.6, 0), (1.4, 0), (2., 1), (2.1, 1), (1.4, 0),
        (2.3, 1)]
   varValues, resCodes = zip(*d)
   nPossibleRes = 2
   res = Quantize.FindVarQuantBound(varValues, resCodes, nPossibleRes)
   target = (1.8, 0.97095)
   assert list(map(lambda x,y:Quantize.feq(x,y,1e-4),res,target))==[1,1],\
          'result comparison failed: %s != %s'%(res,target)
Beispiel #3
0
 def testOneSplit2_noise(self):
     # """ some noise """
     d = [(1., 0), (1.1, 0), (1.2, 0), (1.4, 0), (1.4, 1), (1.6, 0),
          (2., 1), (2.1, 1), (2.2, 1), (2.3, 1)]
     varValues, resCodes = zip(*d)
     nPossibleRes = 2
     res = Quantize.FindVarQuantBound(varValues, resCodes, nPossibleRes)
     target = (1.8, 0.60999)
     self.assertEqual(
         list(map(lambda x, y: Quantize.feq(x, y, 1e-4), res, target)),
         [1, 1], 'result comparison failed: %s != %s' % (res, target))
Beispiel #4
0
 def testOneSplit3(self):
   """ optimal division not possibe
   """
   d = [(1., 0), (1.1, 0), (1.2, 0), (1.4, 2), (1.4, 2), (1.6, 2), (2., 2), (2.1, 1), (2.2, 1),
        (2.3, 1)]
   varValues, resCodes = zip(*d)
   nPossibleRes = 3
   res = Quantize.FindVarQuantBound(varValues, resCodes, nPossibleRes)
   target = (1.3, 0.88129)
   assert list(map(lambda x,y:Quantize.feq(x,y,1e-4),res,target))==[1,1],\
          'result comparison failed: %s != %s'%(res,target)
Beispiel #5
0
 def testOneSplit5_outOfOrder(self):
     # """ same as testOneSplit1 data, but out of order """
     d = [(1., 0), (1.1, 0), (2.2, 1), (1.2, 0), (1.6, 0), (1.4, 0),
          (2., 1), (2.1, 1), (1.4, 0), (2.3, 1)]
     varValues, resCodes = zip(*d)
     nPossibleRes = 2
     res = Quantize.FindVarQuantBound(varValues, resCodes, nPossibleRes)
     target = (1.8, 0.97095)
     self.assertEqual(
         [Quantize.feq(x, y, 1e-4) for x, y in zip(res, target)], [1, 1],
         'result comparison failed: %s != %s' % (res, target))
Beispiel #6
0
 def testOneSplit3(self):
     # """ optimal division not possibe """
     d = [(1., 0), (1.1, 0), (1.2, 0), (1.4, 2), (1.4, 2), (1.6, 2),
          (2., 2), (2.1, 1), (2.2, 1), (2.3, 1)]
     varValues, resCodes = zip(*d)
     nPossibleRes = 3
     res = Quantize.FindVarQuantBound(varValues, resCodes, nPossibleRes)
     target = (1.3, 0.88129)
     self.assertEqual(
         [Quantize.feq(x, y, 1e-4) for x, y in zip(res, target)], [1, 1],
         'result comparison failed: %s != %s' % (res, target))
Beispiel #7
0
 def testOneSplit1(self):
     # """ simple case (clear division) """
     d = [(1., 0), (1.1, 0), (1.2, 0), (1.4, 0), (1.4, 0), (1.6, 0),
          (2., 1), (2.1, 1), (2.2, 1), (2.3, 1)]
     varValues, resCodes = zip(*d)
     nPossibleRes = 2
     res = Quantize.FindVarQuantBound(varValues, resCodes, nPossibleRes)
     target = (1.8, 0.97095)
     self.assertEqual(
         [Quantize.feq(x, y, 1e-4) for x, y in zip(res, target)], [1, 1],
         'result comparison failed: %s != %s' % (res, target))
Beispiel #8
0
 def testOneSplit4_duplicates(self):
     # """ lots of duplicates """
     d = [(1., 0), (1.1, 0), (1.2, 0), (1.2, 1), (1.4, 0), (1.4, 0),
          (1.6, 0), (2., 1), (2.1, 1), (2.1, 1), (2.1, 1), (2.1, 1),
          (2.2, 1), (2.3, 1)]
     varValues, resCodes = zip(*d)
     nPossibleRes = 2
     res = Quantize.FindVarQuantBound(varValues, resCodes, nPossibleRes)
     target = (1.8, 0.68939)
     self.assertEqual(
         [Quantize.feq(x, y, 1e-4) for x, y in zip(res, target)], [1, 1],
         'result comparison failed: %s != %s' % (res, target))
Beispiel #9
0
 def testOneSplit2(self):
   """ some noise
   """
   d = [(1.,0),
        (1.1,0),
        (1.2,0),
        (1.4,0),
        (1.4,1),
        (1.6,0),
        (2.,1),
        (2.1,1),
        (2.2,1),
        (2.3,1)]
   varValues = map(lambda x:x[0],d)
   resCodes = map(lambda x:x[1],d)
   nPossibleRes = 2
   res = Quantize.FindVarQuantBound(varValues,resCodes,nPossibleRes)
   target = (1.8,0.60999)
   assert map(lambda x,y:Quantize.feq(x,y,1e-4),res,target)==[1,1],\
          'result comparison failed: %s != %s'%(res,target)