简体   繁体   English

Python中如何创建和遍历决策树

[英]How to create and traverse decision tree in Python

I am trying to create a Tree in python that looks like this diagram:我正在尝试在 python 中创建一个如下图所示的树:

图表

How do I write code in Python to create this tree and find a given "answer" or leaf node, given gender and color.我如何在 Python 中编写代码来创建这棵树并在给定性别和颜色的情况下找到给定的“答案”或叶节点。

For example:例如:

Input: { Gender : "Female", Color : "Green" }

Output: "Message 5"

I am going to add more levels and nodes, so I trying to create a tree representation rather than a bunch of "if" statements, since that could be messy.我将添加更多级别和节点,因此我尝试创建一个树表示而不是一堆“if”语句,因为那样可能会很混乱。

You can create the tree in a dict structure, eg:您可以在dict结构中创建树,例如:

tree = {'Male': {'Red': 'Message 1', 'Green': 'Message 2', 'Blue': 'Message 3'}, 
        'Female': {'Red': 'Message 4', 'Green': 'Message 5', 'Blue': 'Message 6'}}

Then traversing this tree is nothing more than key lookups, eg:那么遍历这棵树无非就是查key,eg:

In []:
i = {'Gender' : "Female", 'Color' : "Green" }
tree[i['Gender']][i['Color']]


Out[]:
"Message 5"

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM