DEV Community

loading...
Cover image for Using pysimilar to compute similarity between texts

Using pysimilar to compute similarity between texts

kalebu profile image Jordan Kalebu ・2 min read

Hi guys ,
I recently wrote an article titled How to detect plagiarism in text using python where by I shown how you can easily detect the plagiarism between documents as title says manually using cosine similarity.

I republished that article on multiple platform including here on dev.to and Hackernoon, and its one of my most viewed article plus most starred GitHub repository among articles repositories.

Which gave me a second thought to refactor the code/article to make it more easily and friendly to get started with even for absolutely beginners leading me to build a python library pysimilar which I can say simplify it to the maximum;

Getting started with Pysimilar

To get started with pysimilar for comparing text documents, you just need to install first of which you can either install directly from github or using pip.

Here how to install pysimilar using pip

$ pip install pysimilar
Enter fullscreen mode Exit fullscreen mode

Here how to install directly from github

$ git clone https://github.com/Kalebu/pysimilar
$ cd pysimilar
$ pysimilar -> python setup.py install
Enter fullscreen mode Exit fullscreen mode

With Pysimilar you can either compare text documents as strings or specify the path to the file containing the textual documents.

Comparing strings directly

You can easily compare strings using pysimilar using compare() method just as illustrated below;

>>> from pysimilar import compare
>>> compare('very light indeed', 'how fast is light')
0.17077611319011649
Enter fullscreen mode Exit fullscreen mode

Comparing strings contained files

To compare strings contained in the files, you just need to explicit specify the isfile parameter to True just as illustrated below;

>>> compare('README.md', 'LICENSE', isfile=True)
0.25545580376557886
Enter fullscreen mode Exit fullscreen mode

Well that's all for this article

GitHub logo Kalebu / pysimilar

A python library for computing the similarity between two string(text) based on cosine similarity

pysimilar

A python library for computing the similarity between two string(text) based on cosine similarity made by kalebu

Buy Me A Coffee

How does it work ?

It uses Tfidf Vectorizer to transform the text into vectors and then obtained vectors are converted into arrays of numbers and then finally cosine similary computation is employed resulting to output indicating how similar they are.

Installation

You can either install it directly from Github or use pip to install it, here is how you to install it directly from github;

$  git clone https://github.com/Kalebu/pysimilar
$  cd pysimilar
$ pysimilar -> python setup.py install
Enter fullscreen mode Exit fullscreen mode

Installation with pip

$ pip install pysimilar
Enter fullscreen mode Exit fullscreen mode

Example of usage

Pysimilar allows you to either specify the string you want to compare directly or specify path to files containing string you want to compare.

Here an example on how to compare strings directly;

>>> from pysimilar import compare
>>> compare
Enter fullscreen mode Exit fullscreen mode

Discussion (2)

pic
Editor guide
Collapse
vinceknight profile image
Vincent Prytherch

This looks neat. I might have a project where I could use it. 👍

Collapse
kalebu profile image
Jordan Kalebu Author

Thanks for finding it useful