Расщепление плоскости на модуле KDTree Склеарна - PullRequest
0 голосов
/ 21 января 2020

В настоящее время играется с модулем KDTree от sklearn Кажется, я не могу найти информацию о том, как выполняется расщепление, или о структуре дерева. Я подозреваю, что он спрятан в функции get_arrays, но не может его понять.

Для простого массива

X = array([[0, 4],
           [0, 1],
           [2, 3],
           [4, 1],
           [2, 2]])

И, выполнив

kdtree = KDTree(X, leaf_size=1)
kdtree.get_arrays()

Я получаю следующее:

(array([[0., 4.],
        [0., 1.],
        [2., 3.],
        [4., 1.],
        [2., 2.]]),
 array([1, 0, 2, 4, 3]),
 array([(0, 5, 0, 2.5       ), (0, 2, 0, 1.5       ),
        (2, 5, 0, 1.41421356), (0, 1, 1, 0.        ),
        (1, 2, 1, 0.        ), (2, 3, 1, 0.        ),
        (3, 5, 1, 1.11803399)],
       dtype=[('idx_start', '<i8'), ('idx_end', '<i8'), ('is_leaf', '<i8'), ('radius', '<f8')]),
 array([[[0., 1.],
         [0., 1.],
         [2., 1.],
         [0., 1.],
         [0., 4.],
         [2., 3.],
         [2., 1.]],

        [[4., 4.],
         [0., 4.],
         [4., 3.],
         [0., 1.],
         [0., 4.],
         [2., 3.],
         [4., 2.]]]))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...