A fuzzy matching & clustering library for python.
Go to file
Yomguithereal 6c4be04ead Notes 2018-07-31 16:30:24 +02:00
data CLI experimental endpoint 2018-06-22 17:57:25 +02:00
experiments Limited levenshtein distance 2018-07-18 18:40:37 +02:00
fog Notes 2018-07-31 16:30:24 +02:00
test Better SNM unit tests 2018-07-31 16:08:47 +02:00
.gitignore Attempting to optimize levenshtein through python 2018-07-18 16:20:04 +02:00
.travis.yml Fixing CI 2018-07-11 15:55:17 +02:00
LICENSE.txt Fixing 2018-05-18 15:59:00 +02:00
Makefile Attempting to optimize levenshtein through python 2018-07-18 16:20:04 +02:00
Notes.md Adding squeeze option to fingerprint 2018-07-31 12:04:43 +02:00
README.md hr 2018-06-01 19:59:24 +02:00
requirements.txt Adding missing requirements 2018-07-18 16:35:23 +02:00
setup.py Attempting to optimize levenshtein through python 2018-07-18 16:20:04 +02:00

README.md

Build Status

Fog

A fuzzy matching/clustering library for Python.

Installation

You can install fog with pip with the following command:

pip install fog

Usage

Metrics

sparse_cosine_similarity

Computes the cosine similarity of two sparse weighted sets. Those sets have to be represented as counters.

from fog.metrics import sparse_cosine_similarity

# Basic
sparse_cosine_similarity({'apple': 34, 'pear': 3}, {'pear': 1, 'orange': 1})
>>> ~0.062

Arguments

  • A Counter: first weighted set. Must be a dictionary mapping keys to weights.
  • B Counter: second weighted set. Muset be a dictionary mapping keys to weights.

jaccard_similarity

Computes the Jaccard similarity of two arbitrary iterables.

from fog.metrics import jaccard_similarity

# Basic
jaccard_similarity('context', 'contact')
>>> ~0.571

Arguments

  • A iterable: first sequence to compare.
  • B iterable: second sequence to compare.

weighted_jaccard_similarity

Computes the weighted Jaccard similarity of two weighted sets. Those sets have to be represented as counters.

from fog.metrics import weighted_jaccard_similarity

# Basic
weighted_jaccard_similarity({'apple': 34, 'pear': 3}, {'pear': 1, 'orange': 1})
>>> ~0.026

Arguments

  • A Counter: first weighted set. Must be a dictionary mapping keys to weights.
  • B Counter: second weighted set. Muset be a dictionary mapping keys to weights.