我正在尝试使用Python的collections模块中的most_common()
函数,并且想知道是否有办法建立epsilon(或轻微的偏移量),以便为了得到一个数字在most_common
元组数组中枚举,它不一定非精确。
例如,如果我在此阵列上调用most_common
:
(2.9, 3.0, 3.1, 4, 4, 5)
它将返回:
((4, 2), (2.9, 1), (3.0, 1), (3.1, 1), (5, 1))
但是,我正在寻找一个most_common
函数,该函数会考虑epsilon,比如.1
,而是返回:
((3, 3), (4, 2), (5, 1))
答案 0 :(得分:0)
您可以在调用most_common
之前对输入数据进行舍入:
import numpy as np
from collections import Counter
d = [2.9, 3.0, 3.1, 4, 4, 5]
Counter(np.ma.round(d)).most_common()
给出:
[(3.0, 3), (4.0, 2), (5.0, 1)]