加權眾數#

sklearn.utils.extmath.weighted_mode(a, w, *, axis=0)[原始碼]#

返回傳入陣列中加權眾數(最常見)值的陣列。

如果有超過一個此類值,則僅返回第一個。還會返回眾數組的 bin 計數。

這是 scipy.stats.mode 中演算法的擴展。

參數:
a類陣列,形狀為 (n_samples,)

用於尋找眾數的值陣列。

w類陣列,形狀為 (n_samples,)

每個值的權重陣列。

axisint,預設值為 0

要沿其運作的軸。預設值為 0,即第一個軸。

返回:
valsndarray

眾數值的陣列。

scorendarray

每個眾數的加權計數陣列。

參見

scipy.stats.mode

計算沿指定軸的陣列元素的眾數(最常見)值。

範例

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

數值 4 出現三次:使用均勻權重時,結果即為該分佈的眾數。

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

數值 2 的得分最高:它出現兩次,權重分別為 1.5 和 2:這些權重的總和為 3.5。