Advertisement
cyphric

Untitled

Feb 1st, 2022
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.06 KB | None | 0 0
  1. import monkdata as m
  2. import dtree as d
  3. import drawtree_qt5 as dt
  4.  
  5.  
  6. monk = [m.monk1, m.monk2, m.monk3]
  7. monktest = [m.monk1test, m.monk2test, m.monk3test]
  8.  
  9. #Assignment 1
  10. print("Entropy training data")
  11. for x in range(len(monktest)) : print("MONK", x+1, " :", d.entropy(monktest[x]))
  12.  
  13. #Assignment 3
  14. for x in range(len(monk)):
  15. print("\ninformationgain monk", x+1)
  16. for a in range(len(m.attributes)):
  17. print("Attribute", m.attributes[a].name, " :", d.averageGain(monk[x], m.attributes[a]))
  18. print("\nBest attributes")
  19. for x in range(len(monk)):
  20. print("MONK", x+1, ":", d.bestAttribute(monk[x], m.attributes))
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27. splits = []
  28. for x in m.attributes[4].values:
  29. splits.append(d.select(m.monk1, m.attributes[4], m.attributes[4].values[x-1]))
  30. for x in splits:
  31. print("\nInformation gain monk1 a:1 2 3 4 6")
  32. for a in range(len(m.attributes)):
  33. if a != 4:
  34. print(d.averageGain(x, m.attributes[a]))
  35. print(d.bestAttribute(x, m.attributes))
  36.  
  37. tree1 = d.buildTree(m.monk1, m.attributes, 3)
  38. dt.drawTree(tree1)
  39.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement