"Fuzzy" Counter?
Tim Chase
python.list at tim.thechases.com
Tue Sep 23 09:42:46 EDT 2014
On 2014-09-23 05:34, Miki Tebeka wrote:
> Before I start writing my own. Is there something like
> collections.Counter (fore frequencies) that does "fuzzy" matching?
>
> Meaning x is considered equal to y if abs(x - y) < epsilon. (x, y
> and my case will be numpy.array).
Not that I know of -- the performance characteristics would differ
radically from the O(1) expectations that Counter() gives you since
you'd have to compare your value against *every* value in the
container[*], and you have the possibility that two items in the
container are equidistant yet within EPSILON:
EPSILON = 0.51
my_counter[1.0] += 1
my_counter[2.0] += 1
my_counter[1.5] += 1 # which one should be incremented?
-tkc
[*]
This could be mitigated if you had some constraints on your inputs
and wanted to do some sort of bucket-hashing, limiting it to a subset
of the possible keys
More information about the Python-list
mailing list