Пример #1
0
    def test_query_dual(self):
        data = np.array([[1, 1]])
        pts = np.array([[1, 1]])

        tree = KDTree(data, leafsize=2)
        treep = KDTree(pts, leafsize=2)

        dens = KDTree.query_dual_tree(tree, treep, 1)
        kfit = KernelDensity(bandwidth=1.0,
                             kernel="gaussian",
                             breadth_first=True,
                             leaf_size=2,
                             metric_params=None).fit(data)
        result = kfit.score_samples(pts)
        self.assertTrue((dens - np.exp(result)) < 0.001)
Пример #2
0
    def test_query_dual_rand(self):
        d = 5
        data = np.random.rand(51, d)
        pts = np.random.rand(3, d)

        tree = KDTree(data, leafsize=4)
        treep = KDTree(pts, leafsize=4)

        dens = KDTree.query_dual_tree(tree, treep, 1)
        kfit = KernelDensity(bandwidth=1.0,
                             kernel="gaussian",
                             breadth_first=True,
                             leaf_size=2,
                             metric_params=None).fit(data)
        result = kfit.score_samples(pts)
        self.assertTrue(np.sum(dens - np.exp(result)) < 0.001)