def testNormalizeZeroVariance(self): # A list with a standard deviation of zero cannot be normalized because # the standard deviation cannot be made equal to 1. normalized = find_step._Normalize([5.0]) self.assertEqual(1, len(normalized)) self.assertTrue(math.isnan(normalized[0])) normalized = find_step._Normalize([5.0, 5.0]) self.assertEqual(2, len(normalized)) self.assertTrue(math.isnan(normalized[0])) self.assertTrue(math.isnan(normalized[1]))
def testNormalize_ResultMeanIsZeroAndStdDevIsOne(self): # When a data series is normalized, it is guaranteed that the result # should have a mean of 0.0 and a standard deviation and variance of 1.0. _, y_values = zip(*_QUITE_STEPPISH) normalized = find_step._Normalize(y_values) self.assertAlmostEqual(0.0, math_utils.Mean(normalized)) self.assertAlmostEqual(1.0, math_utils.StandardDeviation(normalized))
def testNormalize_ShortList(self): self.assertEqual([-1, 1], find_step._Normalize([3, 4])) self.assertEqual( [-1.2247448713915889, 0, 1.2247448713915889], find_step._Normalize([3, 4, 5]))
def testNormalize_EmptyInput_ReturnsEmptyList(self): self.assertEqual(0, len(find_step._Normalize([])))