1.定義:基尼指數(基尼不純度):表示在樣本集合中一個随機選中的樣本被分錯的機率。
注意: Gini指數越小表示集合中被選中的樣本被分錯的機率越小,也就是說集合的純度越高,反之,集合越不純。
def gini_index_single(a,b):
single_gini = 1 - ((a/(a+b))**2) - ((b/(a+b))**2)
return round(single_gini,4)
# 求取基尼指數
def gini_index(a,b,c,d,e,f):
zuo = gini_index_single(a,b)
zhong = gini_index_single(c,d)
you = gini_index_single(e,f)
sum = a+b+c+d+e+f
gini_index = zuo*((a+b)/sum) + zhong*((c+d)/sum) + you*((e+f)/sum)
return round(gini_index,4)
def gini_index2(a,b,c,d):
zuo = gini_index_single(a,b)
you = gini_index_single(c,d)
sum = a+b+c+d
gini_index2 = zuo*((a+b)/sum) + you*((c+d)/sum)
return round(gini_index2,4)
def gini_index3(a,b):
zuo = gini_index_single(a,b)
sum = a+b
gini_index2 = zuo*((a+b)/sum)
return round(gini_index2,4)
作者:WangB