概要
numpyで最頻値を求める方法です。
方法
np.unique()
を使います。
import numpy as np
arr = np.array([0, 1, 2, 3, 4, 1, 2, 2, 2, 2, 2, 3, 4])
unique, freq = np.unique(arr, return_counts=True) #return_counts=Trueが肝
mode = unique[np.argmax(freq)] #freqの最も頻度が多い引数を取得して、uniqueから引っ張ってくる
print(unique)
"""
[0 1 2 3 4]
"""
print(freq)
"""
[1 2 6 2 2]
"""
print(mode)
"""
2
"""