|
@@ -0,0 +1,26 @@ |
|
|
|
|
|
from triacontagon.cumcount import dfill, \
|
|
|
|
|
|
argunsort, \
|
|
|
|
|
|
cumcount
|
|
|
|
|
|
import numpy as np
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_dfill_01():
|
|
|
|
|
|
input = np.array([1, 1, 1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 5, 5])
|
|
|
|
|
|
output = dfill(input)
|
|
|
|
|
|
expected = np.array([0, 0, 0, 0, 0, 5, 5, 7, 7, 7, 10, 10, 12, 12])
|
|
|
|
|
|
assert np.all(output == expected)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_argunsort_01():
|
|
|
|
|
|
input = np.array([1, 1, 2, 3, 3, 4, 1, 1, 5, 5, 2, 3, 1, 4])
|
|
|
|
|
|
output = np.argsort(input, kind='mergesort')
|
|
|
|
|
|
output = argunsort(output)
|
|
|
|
|
|
expected = np.array([0, 1, 5, 7, 8, 10, 2, 3, 12, 13, 6, 9, 4, 11])
|
|
|
|
|
|
assert np.all(output == expected)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_cumcount_01():
|
|
|
|
|
|
input = np.array([1, 1, 2, 3, 3, 4, 1, 1, 5, 5, 2, 3, 1, 4])
|
|
|
|
|
|
output = cumcount(input)
|
|
|
|
|
|
expected = np.array([0, 1, 0, 0, 1, 0, 2, 3, 0, 1, 1, 2, 4, 1])
|
|
|
|
|
|
assert np.all(output == expected)
|