此模型是使用{Machine Learning in Action“(著名书籍)中的Python中的dict-type样式从my blog创建的:
C4.5 model=
{
'A9': {
'=t': {
'A15': {
'>228': ' + (106.0/3.8)',
'<=228': {
'A11': {
'>3': {
'A15': {
'>4': {
'A15': {
'<=5': ' - (2.0/1.0)',
'>5': ' + (10.0/2.4)'
}
},
'<=4': ' + (25.0/1.3)'
}
},
'<=3': {
'A4': {
'=u': {
'A7': {
'=v': {
'A14': {
'<=110': ' + (18.0/2.5)',
'>110': {
'A15': {
'>8': ' + (4.0/1.2)',
'<=8': {
'A6': {
'=aa': {
'A2': {
'<=41': ' - (3.0/1.1)',
'>41': ' + (2.0/1.0)'
}
},
'=w': {
'A12': {
'=t': ' - (2.0/1.0)',
'=f': ' + (3.0/1.1)'
}
},
'=q': {
'A12': {
'=t': ' + (4.0/1.2)',
'=f': ' - (2.0/1.0)'
}
},
'=ff': ' - (0.0)',
'=r': ' - (0.0)',
'=i': ' - (0.0)',
'=x': ' - (0.0)',
'=e': ' - (0.0)',
'=d': ' - (2.0/1.0)',
'=c': ' - (4.0/2.2)',
'=m': {
'A13': {
'=g': ' + (2.0/1.0)',
'=p': ' - (0.0)',
'=s': ' - (5.0/1.2)'
}
},
'=cc': ' + (2.0/1.8)',
'=k': ' - (2.0/1.0)',
'=j': ' - (0.0)'
}
}
}
}
}
},
'=z': ' + (1.0/0.8)',
'=bb': {
'A14': {
'<=164': ' + (3.4/1.5)',
'>164': ' - (5.6/1.2)'
}
},
'=ff': ' - (1.0/0.8)',
'=o': ' + (0.0)',
'=n': ' + (0.0)',
'=h': ' + (18.0/1.3)',
'=dd': ' + (0.0)',
'=j': ' - (1.0/0.8)'
}
},
'=l': ' + (0.0)',
'=y': {
'A13': {
'=g': {
'A14': {
'<=204': ' - (16.0/2.5)',
'>204': ' + (5.0/2.3)'
}
},
'=p': ' - (0.0)',
'=s': ' + (2.0/1.0)'
}
},
'=t': ' + (0.0)'
}
}
}
}
}
},
'=f': ' - (239.0/19.4)'
}
}
上述字典的信息:
'A9':split node
' + (0.0)':leaf
'=f':branch
'>228':branch
使用matplotlib生成的上述树的图片为:
但是,在这张图片中看不到许多节点,所以有什么方法可以用graphviz绘制它吗?例如,如下链接:
How to convert JSON data into a tree image?
非常感谢!