(self, data)
功能： 用于分类模型
        参数 ：
            data 待分析的数据 ， list
        返回:
            返回决策树的label
        思想 ： 每层树的节点 {节点1：{val1 ：节点2：{val3 ：{。。。。{valn ： label }}}
        第一层是key 下一层是val 第三层是key 第四层是val 。。。。 直到出现val
功能： 用于分类模型
        参数 ：
            data 待分析的数据 ， list
        返回:
            返回决策树的label
        思想 ： 每层树的节点 {节点1：{val1 ：节点2：{val3 ：{。。。。{valn ： label }}}
        第一层是key 下一层是val 第三层是key 第四层是val 。。。。 直到出现val
功能： 用于分类模型 参数 ： data 待分析的数据 ， list 返回 : 返回决策树的label 思想 ： 每层树的节点 { 节点1： { val1 ：节点2： { val3 ： { 。。。。 { valn ： label }}} 第一层是key 下一层是val 第三层是key 第四层是val 。。。。 直到出现val
def classify(self, data):
        '''
        功能： 用于分类模型
        参数 ：
            data 待分析的数据 ， list
        返回:
            返回决策树的label
        思想 ： 每层树的节点 {节点1：{val1 ：节点2：{val3 ：{。。。。{valn ： label }}}
        第一层是key 下一层是val 第三层是key 第四层是val 。。。。 直到出现val
        '''
        if self.tree == None:
            raise Exception, 'no model !'
        node = self.tree
        if not isinstance(node, dict):
            return node
        for _ in range(len(data)):
            val = data[self.attrs.index(node.keys()[0])]  # 得到第n%2层val
            node = node[node.keys()[0]][val]
            if not isinstance(node, dict):
                return node
        raise 'DecisionTree is wrong !', self.tree
def classify ( self , data ) : if self . tree == None : raise Exception , 'no model !' node = self . tree if not isinstance ( node , dict ) : return node for _ in range ( len ( data ) ) : val = data [ self . attrs . index ( node . keys ( ) [ 0 ] ) ] # 得到第n%2层val node = node [ node . keys ( ) [ 0 ] ] [ val ] if not isinstance ( node , dict ) : return node raise 'DecisionTree is wrong !' , self . tree