| 786 | def test_hierarchical(self): |
| 787 | # Assert cluster contains nested clusters and/or vectors. |
| 788 | def _test_cluster(cluster): |
| 789 | for nested in cluster: |
| 790 | if isinstance(nested, vector.Cluster): |
| 791 | v1 = set((v.id for v in nested.flatten())) |
| 792 | v2 = set((v.id for v in cluster.flatten())) |
| 793 | self.assertTrue(nested.depth < cluster.depth) |
| 794 | self.assertTrue(v1.issubset(v2)) |
| 795 | else: |
| 796 | self.assertTrue(isinstance(nested, vector.Vector)) |
| 797 | self.assertTrue(isinstance(cluster, list)) |
| 798 | self.assertTrue(isinstance(cluster.depth, int)) |
| 799 | self.assertTrue(isinstance(cluster.flatten(), list)) |
| 800 | n = 50 |
| 801 | m = dict((d.vector.id, d.type) for d in self.model[:n]) |
| 802 | h = vector.hierarchical([d.vector for d in self.model[:n]], k=2) |