Как я могу обобщить эту функцию для моих атрибутов __dict__ - PullRequest
0 голосов
/ 08 мая 2018

У меня есть атрибут dict для построения древовидной структуры. У меня есть эта функция предикторов, которая прогнозирует точность моего дерева решений на основе отношений дочерних атрибутов.

Я хочу обобщить эту функцию, чтобы иметь возможность прогнозировать свою точность на основе моего атрибута dict .

def __init__(self, _d):
         self.__dict__ = {a:DecisionNode(b) if isinstance(b, dict) else b for a, b in _d.items()}



def predicts(self, x):
            if self.children == {}: # reached leaf level
                return self.attribute
            value = x[self.attribute]
            subtree = self.children[value]
            return subtree.predicts(x)


for i in range(0,len(test)):
        if str(class_tree.predicts(test.loc[i])) == str(test.loc[1,target]):
            correct += 1
    print("\nThe accuracy is: ", correct/len(test))

Вот как выглядят мои атрибуты dict -

class_tree.outlook.sunny.temperature.hot
Out[85]: 'no'
...