MCPcopy
hub / github.com/stumpy-dev/stumpy / test_stimp_1_percent

Function test_stimp_1_percent

tests/test_stimp.py:30–80  ·  view source on GitHub ↗
(T)

Source from the content-addressed store, hash-verified

28
29@pytest.mark.parametrize("T", T)
30def test_stimp_1_percent(T):
31 threshold = 0.2
32 percentage = 0.01
33 min_m = 3
34 n = T.shape[0] - min_m + 1
35
36 seed = np.random.randint(100000)
37
38 np.random.seed(seed)
39 pan = stimp(
40 T,
41 min_m=min_m,
42 max_m=None,
43 step=1,
44 percentage=percentage,
45 pre_scrump=True,
46 # normalize=True,
47 )
48
49 for i in range(n):
50 pan.update()
51
52 ref_PAN = np.full((pan.M_.shape[0], T.shape[0]), fill_value=np.inf)
53
54 np.random.seed(seed)
55 for idx, m in enumerate(pan.M_[:n]):
56 zone = int(np.ceil(m / 4))
57 s = zone
58 tmp_P, tmp_I = naive.prescrump(T, m, T, s=s, exclusion_zone=zone)
59 ref_P, ref_I, _, _ = naive.scrump(T, m, T, percentage, zone, True, s)
60 naive.merge_topk_PI(ref_P, tmp_P, ref_I, tmp_I)
61 ref_PAN[pan._bfs_indices[idx], : ref_P.shape[0]] = ref_P
62
63 # Compare raw pan
64 cmp_PAN = pan._PAN
65
66 naive.replace_inf(ref_PAN)
67 naive.replace_inf(cmp_PAN)
68
69 npt.assert_almost_equal(ref_PAN, cmp_PAN)
70
71 # Compare transformed pan
72 cmp_pan = pan.PAN_
73 ref_pan = naive.transform_pan(
74 pan._PAN, pan._M, threshold, pan._bfs_indices, pan._n_processed
75 )
76
77 naive.replace_inf(ref_pan)
78 naive.replace_inf(cmp_pan)
79
80 npt.assert_almost_equal(ref_pan, cmp_pan)
81
82
83@pytest.mark.parametrize("T", T)

Callers

nothing calls this directly

Calls 2

stimpClass · 0.90
updateMethod · 0.45

Tested by

no test coverage detected