def test_typed_dict(): # load training data X, y = load_gunpoint(split="train", return_X_y=True) word_length = 6 alphabet_size = 4 p = SFA( word_length=word_length, alphabet_size=alphabet_size, levels=2, typed_dict=True, ) p.fit(X, y) word_list = p.bag_to_string(p.transform(X, y)[0][0]) word_length = 6 alphabet_size = 4 p2 = SFA( word_length=word_length, alphabet_size=alphabet_size, levels=2, typed_dict=False, ) p2.fit(X, y) word_list2 = p2.bag_to_string(p2.transform(X, y)[0][0]) assert word_list == word_list2
def test_transformer(binning_method): # load training data X, y = load_gunpoint(split="train", return_X_y=True) word_length = 6 alphabet_size = 4 p = SFA( word_length=word_length, alphabet_size=alphabet_size, binning_method=binning_method, ) p.fit(X, y) assert p.breakpoints.shape == (word_length, alphabet_size) i = sys.float_info.max if binning_method == "information-gain" else 0 assert np.equal(i, p.breakpoints[1, :-1]).all() # imag component is 0 or inf _ = p.transform(X, y)