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。