>我想在sklearn包中,找到一类路径上每个特征的基尼系数 例如在虹膜数据中。像鸢尾花 花瓣长度基尼:0.4 ,花瓣宽度基尼:0.4。
你可以像这样用 Python+numpy 计算基尼系数:
from typing import List
from itertools import combinations
import numpy as np
def gini(x: List[float]) -> float:
x = np.array(x, dtype=np.float32)
n = len(x)
diffs = sum(abs(i - j) for i, j in combinations(x, r=2))
return diffs / (2 * n**2 * x.mean())