示例#1
0
 def setup(self):
     self.A = sp.csr_matrix(np.array(
             [[0. , 0. , 0.5, 0. , 0. ],
              [0. , 0. , 1. , 0. , 0. ],
              [0.5, 1. , 0. , 1. , 0. ],
              [0. , 0. , 1. , 0. , 2. ],
              [0. , 0. , 0. , 2. , 0. ]]))
     self.dA = DistanceMatrix(self.A)
     self.B = sp.csr_matrix(np.array(
             [[0. , 0. , 0.2, 0. , 1. ],
              [0. , 0. , 0. , 1. , 0. ],
              [0.2, 0. , 0. , 1. , 3. ],
              [0. , 1. , 1. , 0. , 0. ],
              [1. , 0. , 3. , 0. , 0. ]]))
     self.dB = DistanceMatrix(self.B)
示例#2
0
 def test_add(self):
     new_coll = self.gcoll + GraphCollection(self.spC)
     assert np.allclose(new_coll[2].adj_matrix.A, self.spC.adj_matrix.A)
     new_dist = np.array(
             [[0. , 1. , 0. ],
              [1. , 0. , 0. ],
              [0. , 0. , 0. ]])
     assert np.all(new_coll.dists == DistanceMatrix(new_dist))
     new_coll2 = GraphCollection(self.spC) + self.gcoll
     assert np.allclose(new_coll2[0].adj_matrix.A, self.spC.adj_matrix.A)
     new_dist = np.array(
             [[0. , 0. , 0. ],
              [0. , 0. , 1. ],
              [0. , 1. , 0. ]])
     assert np.all(new_coll2.dists == DistanceMatrix(new_dist))
示例#3
0
 def test_del(self):
     self.gcoll.append(self.spC)
     del self.gcoll[0]
     assert len(self.gcoll) == 2
     assert np.allclose(self.gcoll[0].adj_matrix.A, self.spB.adj_matrix.A)
     assert np.allclose(self.gcoll[1].adj_matrix.A, self.spC.adj_matrix.A)
     assert np.all(self.gcoll.dists == DistanceMatrix(np.zeros([2, 2])))
示例#4
0
 def test_extend(self):
     self.gcoll.extend(copy.deepcopy(self.gcoll))
     new_dist = np.array(
             [[0. , 1. , 0. , 0. ],
              [1. , 0. , 0. , 0. ],
              [0. , 0. , 0. , 1. ],
              [0. , 0. , 1. , 0. ]])
     assert np.all(self.gcoll.dists == DistanceMatrix(new_dist))
示例#5
0
 def test_extend_single(self):
     self.gcoll.extend(GraphCollection(self.spC))
     assert np.allclose(self.gcoll[2].adj_matrix.A, self.spC.adj_matrix.A)
     new_dist = np.array(
             [[0. , 1. , 0. ],
              [1. , 0. , 0. ],
              [0. , 0. , 0. ]])
     assert np.all(self.gcoll.dists == DistanceMatrix(new_dist))
示例#6
0
 def test_append(self):
     self.gcoll.append(self.spC)
     assert np.allclose(self.gcoll[2].adj_matrix.A, self.spC.adj_matrix.A)
     new_dist = np.array(
             [[0. , 1. , 0. ],
              [1. , 0. , 0. ],
              [0. , 0. , 0. ]])
     assert np.all(self.gcoll.dists == DistanceMatrix(new_dist))
示例#7
0
 def test_del_sparse(self):
     self.gcoll_spdist.append(self.spC)
     del self.gcoll_spdist[0]
     assert len(self.gcoll_spdist) == 2
     assert np.allclose(self.gcoll_spdist[0].adj_matrix.A, self.spB.adj_matrix.A)
     assert np.allclose(self.gcoll_spdist[1].adj_matrix.A, self.spC.adj_matrix.A)
     assert self.gcoll_spdist.dists.issparse
     assert np.all(self.gcoll_spdist.dists == DistanceMatrix(np.zeros([2, 2])))
示例#8
0
 def test_add_sparse(self):
     new_coll = self.gcoll_spdist + GraphCollection(self.spC)
     assert np.allclose(new_coll[2].adj_matrix.A, self.spC.adj_matrix.A)
     new_dist = np.array(
             [[0. , 1. , 0. ],
              [1. , 0. , 0. ],
              [0. , 0. , 0. ]])
     assert new_coll.dists.issparse
     assert np.all(new_coll.dists == DistanceMatrix(new_dist))
示例#9
0
 def test_dist_add(self):
     dC = self.dA + self.dB
     resC = sp.csr_matrix(np.array(
             [[0. , 0. , 0.7, 0. , 1. ],
              [0. , 0. , 1. , 1. , 0. ],
              [0.7, 1. , 0. , 2. , 3. ],
              [0. , 1. , 2. , 0. , 2. ],
              [1. , 0. , 3. , 2. , 0. ]]))
     assert (dC != DistanceMatrix(resC)).nnz == 0
示例#10
0
 def test_dist_sub_zero(self):
     dC = self.dA - self.dA
     assert np.all(dC == DistanceMatrix(np.zeros([5, 5])))