我想知道是Java内置的Java函数,还是Apache Commons Math之类的“正式”库中是否存在Java函数,用于计算基尼系数。
来自Wikipedia→Gini coefficient:
在经济学中,基尼系数(有时称为基尼系数或基尼比)是一种统计上的分散度,旨在代表一个国家居民的收入或财富分配,是最不平等的度量。
答案 0 :(得分:4)
我不知道一个。但是写一个很简单!
double gini(List<Double> values) {
double sumOfDifference = values.stream()
.flatMapToDouble(v1 -> values.stream().mapToDouble(v2 -> Math.abs(v1 - v2))).sum();
double mean = values.stream().mapToDouble(v -> v).average().getAsDouble();
return sumOfDifference / (2 * values.size() * values.size() * mean);
}