File size: 785 Bytes
16760fa | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | from __future__ import annotations
import numpy as np
from toaster.core import Grouping
def test_groups_exclude_noise():
g = Grouping(np.array([0, 0, 1, 1, 1, -1], np.int32))
assert g.n_groups == 2
assert g.group_ids().tolist() == [0, 1]
assert g.n == 6
def test_indices_of_and_group_of():
g = Grouping(np.array([2, 0, 2, -1, 0], np.int32))
assert g.indices_of(2).tolist() == [0, 2]
assert g.indices_of(0).tolist() == [1, 4]
assert g.group_of(3) == -1
# Unknown group id -> empty.
assert g.indices_of(99).tolist() == []
def test_metadata_defaults():
g = Grouping(np.array([0, 1], np.int32), source="dbscan", params={"eps": 0.5})
assert g.source == "dbscan"
assert g.params["eps"] == 0.5
assert g.suggested_labels is None
|