コード例 #1
0
    def test_linear_regression_skip_zeroes(self):
        s1 = series_factory()
        s2 = series_factory()

        Row.objects.create(series=s1, timestamp=datetime.now(), value=1.0)
        Row.objects.create(series=s1, timestamp=datetime.now(), value=2.0)
        Row.objects.create(series=s1, timestamp=datetime.now(), value=0.0)
        Row.objects.create(series=s1, timestamp=datetime.now(), value=4.0)
        Row.objects.create(series=s1, timestamp=datetime.now(), value=5.0)

        Row.objects.create(series=s2, timestamp=datetime.now(), value=1.0)
        Row.objects.create(series=s2, timestamp=datetime.now(), value=2.0)
        Row.objects.create(series=s2, timestamp=datetime.now(), value=3.0)
        Row.objects.create(series=s2, timestamp=datetime.now(), value=4.0)
        Row.objects.create(series=s2, timestamp=datetime.now(), value=5.0)

        lsp = LimitedSeriesPair(s1, s2, skip_zeroes=True)
        r = lsp.linear_regression()
        # dict(a=a, b=b, rr=rr, ss=ss, var_a=var_a, var_b=var_b)
        self.assertEqual(r['a'], 1.0)
        self.assertEqual(r['b'], 0.0)
        self.assertEqual(r['rr'], 1.0)
        self.assertEqual(r['ss'], 0.0)
        self.assertEqual(r['var_a'], 0.0)
        self.assertEqual(r['var_b'], 0.0)
コード例 #2
0
    def test_linear_regression_divide_by_zero(self):
        s1 = series_factory()
        s2 = series_factory()

        Row.objects.create(series=s1, timestamp=datetime.now(), value=0.0)
        Row.objects.create(series=s1, timestamp=datetime.now(), value=0.0)
        Row.objects.create(series=s2, timestamp=datetime.now(), value=0.0)
        Row.objects.create(series=s2, timestamp=datetime.now(), value=0.0)

        lsp = LimitedSeriesPair(s1, s2)
        r = lsp.linear_regression()
        self.assertEqual(r, None)
コード例 #3
0
    def test_regression_line_points(self):
        s1 = series_factory()
        s2 = series_factory()

        Row.objects.create(series=s1, timestamp=datetime.now(), value=1.0)
        Row.objects.create(series=s1, timestamp=datetime.now(), value=2.0)
        Row.objects.create(series=s1, timestamp=datetime.now(), value=3.0)
        Row.objects.create(series=s1, timestamp=datetime.now(), value=4.0)
        Row.objects.create(series=s1, timestamp=datetime.now(), value=5.0)

        Row.objects.create(series=s2, timestamp=datetime.now(), value=1.0)
        Row.objects.create(series=s2, timestamp=datetime.now(), value=2.0)
        Row.objects.create(series=s2, timestamp=datetime.now(), value=3.0)
        Row.objects.create(series=s2, timestamp=datetime.now(), value=4.0)
        Row.objects.create(series=s2, timestamp=datetime.now(), value=5.0)

        lsp = LimitedSeriesPair(s1, s2)
        r = lsp.regression_line_points()
        self.assertEqual(r, [[1.0, 1.0], [5.0, 5.0]])