MCPcopy Index your code
hub / github.com/ddbourgin/numpy-ml / _build_tree

Method _build_tree

numpy_ml/utils/data_structures.py:259–272  ·  view source on GitHub ↗
(self, X, y)

Source from the content-addressed store, hash-verified

257 self.root.right = self._build_tree(right_X, right_y)
258
259 def _build_tree(self, X, y):
260 centroid, left_X, left_y, right_X, right_y = self._split(X, y)
261
262 if X.shape[0] <= self.leaf_size:
263 leaf = BallTreeNode(centroid=centroid, X=X, y=y)
264 leaf.radius = np.max([self.metric(centroid, x) for x in X])
265 leaf.is_leaf = True
266 return leaf
267
268 node = BallTreeNode(centroid=centroid)
269 node.radius = np.max([self.metric(centroid, x) for x in X])
270 node.left = self._build_tree(left_X, left_y)
271 node.right = self._build_tree(right_X, right_y)
272 return node
273
274 def _split(self, X, y=None):
275 # find the dimension with greatest variance

Callers 1

fitMethod · 0.95

Calls 2

_splitMethod · 0.95
BallTreeNodeClass · 0.85

Tested by

no test coverage detected