Page 71 - Data Science Algorithms in a Week
P. 71

Decision Trees


                from anytree import Node, RenderTree
                import sys
                sys.path.append('../common')
                import common
                import decision_tree

                # Program start
                csv_file_name = sys.argv[1]
                verbose = int(sys.argv[2])  # verbosity level, 0 - only decision tree
                # Define the equired column to be the last one.
                # I.e. a column defining the decision variable.
                (heading, complete_data, incomplete_data,
                 enquired_column) = common.csv_file_to_ordered_data(csv_file_name)

                tree = decision_tree.constuct_decision_tree(
                    verbose, heading, complete_data, enquired_column)
                decision_tree.display_tree(tree)
                # source_code/common/decision_tree.py
                # ***Decision Tree library ***
                # Used to construct a decision tree and a random forest.
                import math
                import random
                import common
                from anytree import Node, RenderTree
                from common import printfv
                # Node for the construction of a decision tree.
                class TreeNode:

                    def __init__(self, var=None, val=None):
                        self.children = []
                        self.var = var
                        self.val = val
                    def add_child(self, child):
                        self.children.append(child)
                    def get_children(self):
                        return self.children

                    def get_var(self):
                        return self.var

                    def get_val(self):
                        return self.val



                                                     [ 59 ]
   66   67   68   69   70   71   72   73   74   75   76