Guest User

Untitled

a guest
Mar 24th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.84 KB | None | 0 0
  1. from sklearn.tree import _tree
  2.  
  3. def tree_to_code(tree, feature_names):
  4. tree_ = tree.tree_
  5. feature_name = [
  6. feature_names[i] if i != _tree.TREE_UNDEFINED else "undefined!"
  7. for i in tree_.feature
  8. ]
  9. print ("def tree({}):".format(", ".join(feature_names)))
  10.  
  11. def recurse(node, depth):
  12. indent = " " * depth
  13. if tree_.feature[node] != _tree.TREE_UNDEFINED:
  14. name = feature_name[node]
  15. threshold = tree_.threshold[node]
  16. print ("{}if {} <= {}:".format(indent, name, threshold))
  17. recurse(tree_.children_left[node], depth + 1)
  18. print ("{}else: # if {} > {}".format(indent, name, threshold))
  19. recurse(tree_.children_right[node], depth + 1)
  20. else:
  21. print ("{}return {}".format(indent, np.argmax(tree_.value[node])))
  22.  
  23. recurse(0, 1)
Add Comment
Please, Sign In to add comment