決策樹ID3演算法
阿新 • • 發佈:2019-02-06
TypeError: 'dict_keys' object does not support indexing
9.TypeError: ‘dict_keys’ object does not support indexing 這個問題是python版本的問題 #如果使用的是python2 firstStr = myTree.keys()[0] #LZ使用的是python3 firstSides = list(myTree.keys()) firstStr = firstSides[0]12345 這是看決策樹程式碼出現的問題,python3如果執行 firstStr = myTree.keys()[0]1 就會報這個錯誤,解決辦法就是先轉換成list,再把需要的索引提取出來。
NameError: name 'trainLabel' is not defined
def labelCount(self, dataset): labelCount = {} for i in dataset: if trainLabel[i] in labelCount.keys(): labelCount[trainLabel[i]] += 1 else: labelCount[trainLabel[i]] = 1 return labelCount # 改為 def labelCount(self, dataset): labelCount = {} for i in dataset: if self.trainLabel[i] in labelCount.keys(): labelCount[self.trainLabel[i]] += 1 else: labelCount[self.trainLabel[i]] = 1 return labelCount