大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
代码实现
套用公式:
def gini(a: int, b: int) -> float:
return 1-pow(a/(a+b), 2)-pow(b/(a+b), 2)
def gini_total(a: int, b: int, c: int, d: int) -> float:
return (a+b)/(a+b+c+d) * gini(a, b) + (c+d)/(a+b+c+d) * gini(c, d)
print(gini(13, 98))
print(gini(24, 29))
print(gini_total(13, 98, 24, 29))
numpy实现
import numpy as np
def gini(data_list):
data_length = len(data_list)
total_sum = np.sum(data_list)
total_gini = 0
for i in range(data_length):
temp_denominator = data_list[i][0] + data_list[i][1]
temp_son = np.sum(data_list[i])
temp_gini = 1 - np.power(data_list[i][0]/temp_denominator, 2) - np.power(data_list[i][1]/temp_denominator, 2)
total_gini = temp_gini * temp_son / total_sum + total_gini
return total_gini
测试结果
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/183751.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...