Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class TreeObj:
- def __init__(self, indx, value=None):
- self.indx = indx
- self.value = value
- self.__left = None
- self.__right = None
- @property
- def left(self):
- return self.__left
- @left.setter
- def left(self, object):
- self.__left = object
- @property
- def right(self):
- return self.__right
- @right.setter
- def right(self, object):
- self.__right = object
- class DecisionTree:
- @classmethod
- def predict(cls, root, x):
- height = root
- while height:
- if x[height.indx] == 1:
- height = height.left
- else:
- height = height.right
- if height.left is None:
- break
- return height.value
- @classmethod
- def add_obj(cls, obj, node=None, left=True):
- if node:
- if left:
- node.left = obj
- else:
- node.right = obj
- return obj
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement