在python中为most_common()建立一个Epsilon

时间:2015-08-03 21:57:08

标签: python histogram counter frequency

我正在尝试使用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))

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)]