MCPcopy Index your code
hub / github.com/Dod-o/Statistical-Learning-Method_Code / majorClass

Function majorClass

DecisionTree/DecisionTree.py:45–66  ·  view source on GitHub ↗

找到当前标签集中占数目最大的标签 :param labelArr: 标签集 :return: 最大的标签

(labelArr)

Source from the content-addressed store, hash-verified

43 return dataArr, labelArr
44
45def majorClass(labelArr):
46 '''
47 找到当前标签集中占数目最大的标签
48 :param labelArr: 标签集
49 :return: 最大的标签
50 '''
51 #建立字典,用于不同类别的标签技术
52 classDict = {}
53 #遍历所有标签
54 for i in range(len(labelArr)):
55 #当第一次遇到A标签时,字典内还没有A标签,这时候直接幅值加1是错误的,
56 #所以需要判断字典中是否有该键,没有则创建,有就直接自增
57 if labelArr[i] in classDict.keys():
58 # 若在字典中存在该标签,则直接加1
59 classDict[labelArr[i]] += 1
60 else:
61 #若无该标签,设初值为1,表示出现了1次了
62 classDict[labelArr[i]] = 1
63 #对字典依据值进行降序排序
64 classSort = sorted(classDict.items(), key=lambda x: x[1], reverse=True)
65 #返回最大一项的标签,即占数目最多的标签
66 return classSort[0][0]
67
68def calc_H_D(trainLabelArr):
69 '''

Callers 1

createTreeFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected