PythonはDescionTree決定ツリーを実現---データセットを区分する


 """
         
    [[1, 1, ‘yes’], [1, 1, ‘yes’], [1, 0, ‘no’], [0, 1, ‘no’], [0, 1, ‘no’]]
             。                                     ,         ,1    ,0     。              。
                                           1        ,       :
    [1, 1, ‘yes’], [1, 1, ‘yes’], [1, 0, ‘no’]
                   ,                          ,       
    """
    def split_data_set(self, data_set, index, value):
        ret_data_set = []
        for feat_vec in data_set:
            if feat_vec[index] == value:
                reduced_feat_vec = feat_vec[:index]
                reduced_feat_vec.extend(feat_vec[index + 1:])
                ret_data_set.append(reduced_feat_vec)
        return ret_data_set
    #                split_data_set     
    def split_data_set1(self, data_set, index, value):
        ret_data_set = [data[:index] + data[index + 1:] for data in data_set for i, v in enumerate(data) if i == index and v == value]
        return ret_data_set