Fuzzy string matching in python
Project description
FuzzyWuzzy
Fuzzy string matching like a boss. It uses Levenshtein Distance to help calculate differences between sequences in a simple to use package.
Requirements
Python 2.4 or higher
difflib
python-Levenshtein (optional, provides a 4-10x speedup in String Matching)
Installation
Using PIP via PyPI
pip install fuzzywuzzy
Using PIP via Github
pip install git+git://github.com/seatgeek/fuzzywuzzy.git@0.8.1#egg=fuzzywuzzy
Adding to your requirements.txt file (run pip install -r requirements.txt afterwards)
git+ssh://git@github.com/seatgeek/fuzzywuzzy.git@0.8.1#egg=fuzzywuzzy
Manually via GIT
git clone git://github.com/seatgeek/fuzzywuzzy.git fuzzywuzzy
cd fuzzywuzzy
python setup.py install
Usage
>>> from fuzzywuzzy import fuzz
>>> from fuzzywuzzy import process
Simple Ratio
>>> fuzz.ratio("this is a test", "this is a test!")
96
Partial Ratio
>>> fuzz.partial_ratio("this is a test", "this is a test!")
100
Token Sort Ratio
>>> fuzz.ratio("fuzzy wuzzy was a bear", "wuzzy fuzzy was a bear")
90
>>> fuzz.token_sort_ratio("fuzzy wuzzy was a bear", "wuzzy fuzzy was a bear")
100
Token Set Ratio
>>> fuzz.token_sort_ratio("fuzzy was a bear", "fuzzy fuzzy was a bear")
84
>>> fuzz.token_set_ratio("fuzzy was a bear", "fuzzy fuzzy was a bear")
100
Process
>>> choices = ["Atlanta Falcons", "New York Jets", "New York Giants", "Dallas Cowboys"]
>>> process.extract("new york jets", choices, limit=2)
[('New York Jets', 100), ('New York Giants', 78)]
>>> process.extractOne("cowboys", choices)
("Dallas Cowboys", 90)
Known Ports
Some people are porting FuzzyWuzzy to other languages. Here is one port we know about:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
fuzzywuzzy-0.8.1.tar.gz
(16.7 kB
view details)
Built Distribution
File details
Details for the file fuzzywuzzy-0.8.1.tar.gz
.
File metadata
- Download URL: fuzzywuzzy-0.8.1.tar.gz
- Upload date:
- Size: 16.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d940bcf50b0046354fe0e9955389dd17b3771a22c5c62f92e99c449e6dc6aac6 |
|
MD5 | eac7243ade8e4ed717b11291b70b9846 |
|
BLAKE2b-256 | 87704dbdf522c6fd817c4cfdafc890cf2e25ce8f8d1006570b3a6efab0f522ad |
File details
Details for the file fuzzywuzzy-0.8.1-py2-none-any.whl
.
File metadata
- Download URL: fuzzywuzzy-0.8.1-py2-none-any.whl
- Upload date:
- Size: 13.9 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7d3d9242d89b77b2bfef63a4f95c3a4c9c512604f71749981e1182c4e3ccadd2 |
|
MD5 | 423042f6f299409dceba4955e095fdf0 |
|
BLAKE2b-256 | 1364fc83a392a54f71ec27166766a2aceb9677e9621b5198a75c51a83b7da62e |