def test_point_adjacency_subsets(self): c0 = Contour([0]) c1 = Contour([1, 3, 0, 2]) cpas1 = [[c0, Contour([0, 1]), Contour([1, 2, 0]), Contour([1, 3, 0, 2])], [None, c0, Contour([1, 0]), Contour([2, 0, 1])], [None, None, c0, Contour([0, 1])], [None, None, None, c0]] self.assertEqual(c1.point_adjacency_subsets().as_matrix().tolist(), cpas1)
def test_ancestors(self): s1 = [0, 3, 1, 2] c1 = Contour(s1) ancestors1 = [Contour(s1[:i]).translate() for i in range(1, len(s1) + 1)] s2 = [1, 3, 0, 2, 4] c2 = Contour(s2) ancestors2 = [Contour(s2[:i]).reduction_schultz()[0].translate() for i in range(1, len(s2) + 1)] self.assertEqual(c1.ancestors(), ancestors1) self.assertEqual(c2.ancestors(True), ancestors2)
def test_cumulative_ascent_descent_index(self): c1 = Contour([0, 3, 1, 2]) self.assertEqual(c1.cumulative_ascent_descent_index().tolist(), [0.5, 1, 0.75, 0.7])
def test_contour_subsets(self): c1 = Contour([0, 3, 1, 2]) subsets = [[[0, 1], [0, 1], [0, 1], [1, 0], [1, 0], [0, 1]], [[0, 2, 1], [0, 2, 1], [0, 1, 2], [2, 0, 1]]] c1_subsets = [list(map(Contour, ss)) for ss in subsets] self.assertEqual(c1._subsets(), c1_subsets)
def test_contour_class_vector_ii(self): c1 = Contour([1, 2, 3, 5, 4, 0]) ccvii = [9, 6] self.assertEqual(c1.class_vector_ii(), ccvii) self.assertEqual(c1.class_vector_ii(True), float(3/15))
def test_contour_class_prime_form_sampaio(self): c1 = Contour([8, 6, 9, 5]) self.assertEqual(c1.class_prime_form_sampaio(), Contour([0, 3, 1, 2]))
def test_contour_interval_array(self): c1 = Contour([1, 2, 3, 5, 4, 0]) cia = [[3, 3, 2, 1, 0], [2, 1, 1, 1, 1]] self.assertEqual(c1.interval_array(), cia)
def test_contour_interval_succession(self): c1 = Contour([0, 3, 1, 2]) cis = pandas.Series([3, -2, 1]) self.assertEqual(c1.interval_succession().tolist(), cis.tolist())
def test_contour_comparison_matrix_ternary(self): c1 = Contour([0, 2, 1]) m1 = FuzzyMatrix([[1, 2, 2], [0, 1, 0], [0, 2, 1]]) m1.matrix.columns = m1.matrix.index = [0, 2, 1] self.assertEqual(c1.comparison_matrix_ternary(), m1)
def test_contour_comparison_matrix_crisp(self): c1 = Contour([0, 2, 1]) m1 = CrispMatrix([[0, 1, 1], [-1, 0, -1], [-1, 1, 0]]) m1.matrix.columns = m1.matrix.index = [0, 2, 1] self.assertEqual(c1.comparison_matrix_crisp(), m1)
def test_contour_integer_check(self): c1 = Contour([0, 2, 1]) c2 = Contour([1.2, 43.1, 23.546]) c2._integer_check() self.assertEqual(c1, c2)