Exemplo n.º 1
0
def _overlap_segment(expected, observed, start=None, end=None):
    tp, fp, fn = 0, 0, 0

    observed_copy = observed.copy()

    for expected_seq in expected:
        found = False
        for observed_seq in observed:
            if _overlap(expected_seq, observed_seq):
                if not found:
                    tp += 1
                    found = True
                if observed_seq in observed_copy:
                    observed_copy.remove(observed_seq)

        if not found:
            fn += 1

    fp += len(observed_copy)

    return None, fp, fn, tp
def test__overlap_false(expected, observed):
    expected_false = expected["false"]
    observed_false = observed["false"]
    assert not all(
        _overlap(ex, ob) for ex, ob in zip(expected_false, observed_false))
def test__overlap_true(expected, observed):
    expected_true = expected["true"]
    observed_true = observed["true"]
    assert all(
        _overlap(ex, ob) for ex, ob in zip(expected_true, observed_true))