How to use matrixprofile - 10 common examples

To help you get started, we’ve selected a few matrixprofile examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github target / matrixprofile-ts / tests / test_scrimp.py View on Github external
def test_next_subsequence():
    ts = [1, 2, 3, 4, 5, 6, 7, 8]
    m = 4
    idx = 0

    expected_subsequence = [1, 2, 3, 4]
    assert((scrimp.next_subsequence(ts, idx, m) == expected_subsequence))
github target / matrixprofile-ts / tests / test_scrimp.py View on Github external
def test_apply_exclusion_zone():
    ts = [1, 2, 3, 4, 5, 6, 7, 8]
    m = 4

    # test index 0
    idx = 0
    profile_len = scrimp.calc_profile_len(len(ts), m)  # 4
    exclusion_zone = scrimp.calc_exclusion_zone(m)  # 1
    subsequence = scrimp.next_subsequence(ts, idx, m)
    X, n, sumx2, sumx, meanx, sigmax2, sigmax = scrimp.fast_find_nn_pre(ts, m)
    dp = scrimp.calc_distance_profile(X, subsequence, n, m, meanx, sigmax)
    dp = scrimp.apply_exclusion_zone(idx, exclusion_zone, profile_len, dp)

    expected_dp = np.array([
        np.inf,
        np.inf,
        0.4215e-07,
        0.4215e-07,
        0.4215e-07,
    ])

    np.testing.assert_almost_equal(dp, expected_dp)

    # test idx 1
    idx = 1
github target / matrixprofile-ts / tests / test_scrimp.py View on Github external
expected_idx_nn = 2
    expected_mp_index = np.array([
        2,
        0,
        0,
        0,
        0,
    ])

    np.testing.assert_almost_equal(mp, expected_mp)
    np.testing.assert_almost_equal(mp_index, expected_mp_index)
    assert(idx_nn == expected_idx_nn)

    # test index 0
    idx = 1
    subsequence = scrimp.next_subsequence(ts, idx, m)
    dp = scrimp.calc_distance_profile(X, subsequence, n, m, meanx, sigmax)
    dp = scrimp.apply_exclusion_zone(idx, exclusion_zone, profile_len, dp)

    mp, mp_index, idx_nn = scrimp.find_and_store_nn(1, idx, mp, mp_index, dp)
    expected_idx_nn = 3
    assert(idx_nn == expected_idx_nn)
github target / matrixprofile-ts / tests / test_scrimp.py View on Github external
def test_calc_refine_distance_end_idx():
    ts = [1, 2, 3, 4, 5, 6, 7, 8]
    m = 4
    step_size = 0.25

    # test index 0
    idx = 0
    profile_len = scrimp.calc_profile_len(len(ts), m)
    exclusion_zone = scrimp.calc_exclusion_zone(m)
    subsequence = scrimp.next_subsequence(ts, idx, m)
    X, n, sumx2, sumx, meanx, sigmax2, sigmax = scrimp.fast_find_nn_pre(ts, m)
    dp = scrimp.calc_distance_profile(X, subsequence, n, m, meanx, sigmax)
    dp = scrimp.apply_exclusion_zone(idx, exclusion_zone, profile_len, dp)
    mp = np.zeros(profile_len)
    mp_index = np.zeros(profile_len, dtype='int32')
    mp, mp_index, idx_nn = scrimp.find_and_store_nn(0, idx, mp, mp_index, dp)
    idx_diff = scrimp.calc_idx_diff(idx, idx_nn)
    step_size = scrimp.calc_step_size(m, step_size)
    endidx = scrimp.calc_end_idx(profile_len, idx, step_size, idx_diff)
    refine_distance = np.full(profile_len, np.inf)
    result = scrimp.calc_refine_distance_end_idx(
        refine_distance, dp, idx, endidx, meanx, sigmax, idx_nn, idx_diff, m)
    expected_result = np.array([np.inf, np.inf, np.inf, np.inf, np.inf])

    np.testing.assert_almost_equal(result, expected_result)
github target / matrixprofile-ts / tests / test_scrimp.py View on Github external
dp = scrimp.calc_distance_profile(X, subsequence, n, m, meanx, sigmax)
    dp = scrimp.apply_exclusion_zone(idx, exclusion_zone, profile_len, dp)

    expected_dp = np.array([
        np.inf,
        np.inf,
        np.inf,
        0.4215e-07,
        0.4215e-07,
    ])

    np.testing.assert_almost_equal(dp, expected_dp)

    # test idx 2
    idx = 2
    subsequence = scrimp.next_subsequence(ts, idx, m)
    dp = scrimp.calc_distance_profile(X, subsequence, n, m, meanx, sigmax)
    dp = scrimp.apply_exclusion_zone(idx, exclusion_zone, profile_len, dp)

    expected_dp = np.array([
        0.4215e-07,
        np.inf,
        np.inf,
        np.inf,
        0.4215e-07,
    ])

    np.testing.assert_almost_equal(dp, expected_dp)

    # test idx 3
    idx = 3
    subsequence = scrimp.next_subsequence(ts, idx, m)
github target / matrixprofile-ts / tests / test_scrimp.py View on Github external
dp = scrimp.calc_distance_profile(X, subsequence, n, m, meanx, sigmax)

    np.testing.assert_almost_equal(dp, expected_dp)

    # test idx 1
    idx = 1

    expected_dp = np.array([
        4.21468485e-08,
        4.21468485e-08,
        4.21468485e-08,
        4.21468485e-08,
        4.21468485e-08
    ])

    subsequence = scrimp.next_subsequence(ts, idx, m)
    X, n, sumx2, sumx, meanx, sigmax2, sigmax = scrimp.fast_find_nn_pre(ts, m)
    dp = scrimp.calc_distance_profile(X, subsequence, n, m, meanx, sigmax)

    np.testing.assert_almost_equal(dp, expected_dp)
github target / matrixprofile-ts / tests / test_scrimp.py View on Github external
dp = scrimp.calc_distance_profile(X, subsequence, n, m, meanx, sigmax)
    dp = scrimp.apply_exclusion_zone(idx, exclusion_zone, profile_len, dp)

    expected_dp = np.array([
        np.inf,
        np.inf,
        0.4215e-07,
        0.4215e-07,
        0.4215e-07,
    ])

    np.testing.assert_almost_equal(dp, expected_dp)

    # test idx 1
    idx = 1
    subsequence = scrimp.next_subsequence(ts, idx, m)
    dp = scrimp.calc_distance_profile(X, subsequence, n, m, meanx, sigmax)
    dp = scrimp.apply_exclusion_zone(idx, exclusion_zone, profile_len, dp)

    expected_dp = np.array([
        np.inf,
        np.inf,
        np.inf,
        0.4215e-07,
        0.4215e-07,
    ])

    np.testing.assert_almost_equal(dp, expected_dp)

    # test idx 2
    idx = 2
    subsequence = scrimp.next_subsequence(ts, idx, m)
github target / matrixprofile-ts / tests / test_scrimp.py View on Github external
def test_calc_refine_distance_begin_idx():
    ts = [1, 2, 3, 4, 5, 6, 7, 8]
    m = 4
    step_size = 0.25

    # test index 0
    idx = 0
    profile_len = scrimp.calc_profile_len(len(ts), m)
    exclusion_zone = scrimp.calc_exclusion_zone(m)
    subsequence = scrimp.next_subsequence(ts, idx, m)
    X, n, sumx2, sumx, meanx, sigmax2, sigmax = scrimp.fast_find_nn_pre(ts, m)
    dp = scrimp.calc_distance_profile(X, subsequence, n, m, meanx, sigmax)
    dp = scrimp.apply_exclusion_zone(idx, exclusion_zone, profile_len, dp)
    mp = np.zeros(profile_len)
    mp_index = np.zeros(profile_len, dtype='int32')
    mp, mp_index, idx_nn = scrimp.find_and_store_nn(0, idx, mp, mp_index, dp)
    idx_diff = scrimp.calc_idx_diff(idx, idx_nn)
    step_size = scrimp.calc_step_size(m, step_size)
    beginidx = scrimp.calc_begin_idx(idx, step_size, idx_diff)

    refine_distance = np.full(profile_len, np.inf)
    result = scrimp.calc_refine_distance_begin_idx(
        refine_distance, dp, beginidx, idx, idx_diff, idx_nn, sigmax, meanx, m)
    expected_result = np.array([np.inf, np.inf, np.inf, np.inf, np.inf])

    np.testing.assert_almost_equal(result, expected_result)
github target / matrixprofile-ts / tests / test_scrimp.py View on Github external
def test_find_and_store_nn():
    ts = [1, 2, 3, 4, 5, 6, 7, 8]
    m = 4

    # test index 0
    idx = 0
    profile_len = scrimp.calc_profile_len(len(ts), m)
    exclusion_zone = scrimp.calc_exclusion_zone(m)
    subsequence = scrimp.next_subsequence(ts, idx, m)
    X, n, sumx2, sumx, meanx, sigmax2, sigmax = scrimp.fast_find_nn_pre(ts, m)
    dp = scrimp.calc_distance_profile(X, subsequence, n, m, meanx, sigmax)
    dp = scrimp.apply_exclusion_zone(idx, exclusion_zone, profile_len, dp)

    mp = np.zeros(profile_len)
    mp_index = np.zeros(profile_len, dtype='int32')

    mp, mp_index, idx_nn = scrimp.find_and_store_nn(0, idx, mp, mp_index, dp)
    expected_mp = np.array([
        0.4215e-07,
        np.inf,
        0.4215e-07,
        0.4215e-07,
        0.4215e-07,
    ])
    expected_idx_nn = 2
github target / matrixprofile-ts / tests / test_scrimp.py View on Github external
def test_invalid_runtime_str():
    exc = 'runtime should be a valid positive integer.'
    with pytest.raises(ValueError) as excinfo:
        scrimp.scrimp_plus_plus([1, 2, 3, 4, 5], 2, runtime='1')
        assert exc in str(excinfo.value)