I ディシジョン ツリーは Python で辞書として実装されています。例:
sampletree = {'spl':'foo', 'go_r':{'cut':150} , 'l':{'val':100}, 'r':{'val':200}}
ツリーを出力する再帰関数があります。
def TREE_PRINT(tree, indent=''):
#is this a leaf node?
if 'val' in tree:
print str(tree['val'])
else:
#print the criteria
print 'split: '+ str(tree['spl']) + ' ' + str(tree['go_r'])
#print the branches
print indent+'L->', TREE_PRINT(tree['l'], indent+' ')
print indent+'R->', TREE_PRINT(tree['r'], indent+' ')
関数を実行したときに出力される None を抑制するにはどうすればよいですか?
TREE_PRINT(sampletree)
split: foo {'cut': 150}
L-> 100
None
R-> 200
None
'' を返そうとしましたが、不要な余分な改行が発生します。集団知能のプログラミングの 151 ページの 'printtree' 関数から構築しています。