sklearn.utils.extmath.weighted_mode

sklearn.utils.extmath.weighted_mode(a, w, *, axis=0)

源码

返回数组中加权模态(最常见)值的数组

如果有多个这样的值,则仅返回第一个。 还将返回模态箱的箱数。

这是scipy.stats.mode中算法的扩展。

参数 说明
a array_like
查找模式的n维数组。
w array_like
每个值的权重的n维数组
axis int, optional
操作的轴。默认值为0,即第一个轴。
返回值 说明
vals ndarray
模态值数组。
score ndarray
每种模式的加权计数数组。

另见:

scipy.stats.mode

示例:

>>> from sklearn.utils.extmath import weighted_mode
>>> x = [414242]
>>> weights = [111111]
>>> weighted_mode(x, weights)
(array([4.]), array([3.]))

值4出现了三次:在权重一致的情况下,结果就是分布的模式。

>>> weights = [130.51.512]  # deweight the 4's
>>> weighted_mode(x, weights)
(array([2.]), array([3.5]))

值2得分最高:权重为1.5和2时,它出现两次:权重之和为3.5。