Skip to main content

A recommendation application using either item-based or user-based approaches

Project description


Recommender is a recommendation application using either item-based or user-based approaches.

Recommender is at version v0.3.0, also see change log for more details on release history.

If you like this project, feel fee to leave a few words of appreciation here Say Thanks!

Build Build Status Coverage Status
Quality Maintainability Requirements Status
Support gitter
Platform pyversion implementation

Table of contents

  1. Usage
  2. Contribution
  3. License

Usage

Install with pip

$ pip install recommender-engine

API

make_recommendation(person_to_recommend, preference_space, recommender_approach='user_based', number_of_items_to_recommend=10, similarity_measure='euclidean_distance')

	Return list of recommendation items based on the chosen approach and similarity emasure

	Parameters
	--------------
	person_to_recommend (str): user id/name to recommend to

	preference_space (dict):  keys are user id/name and values are dictionary of items and ratings

	recommender_approach (str): support 'user_based' (default) or 'item_based'

	number_of_items_to_recommend (int): number of items to recommend (default=10)

	similarity_measure (str): similarity measurement method , support 'euclidean_distance' (default), 'cosine' or 'pearson_correlation'

Example


>>> from recommender_engine import make_recommendation
>>>	result = make_recommendation(person_to_recommend = "userA",
								 preference_space = preference_space,
								 recommender_approach = 'user_based',
								 number_of_items_to_recommend = 10,
								 similarity_measure = 'euclidean_distance')

The preference space is dictionary data structure where keys are users and values are dictionary of items and ratings

preference_space = {
					'userA : {
							 'item1' : 'ratingA1, 
							 'item2' : 'ratingA2',
							  ..., 
							  'itemn' : 'ratingAn
							  }, 
					..., 
					'userZ:{
							'item1' : 'ratingZ1,
							 'item2' : 'ratingZ2',
							  ...,
							 'itemn' : 'ratingZn
							}
				    }

Tested Datasets

The project has been tested on these Datasets

  1. Jester
  2. MovieLens

Contribution Open Source Helpers

Please follow our contribution convention at contribution instruction and code of conduct

Please check out the issue file for list of issues that required helps.

Appreciation

Feel free to add your name into the list of contributors. You will automatically be inducted into Hall of Fame as a way to show my appreciation for your contributions

Hall of Fame


License

See the LICENSE file for license rights and limitations (Apache License 2.0).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

recommender-engine-0.3.0.tar.gz (15.5 kB view details)

Uploaded Source

Built Distribution

recommender_engine-0.3.0-py2.py3-none-any.whl (16.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file recommender-engine-0.3.0.tar.gz.

File metadata

  • Download URL: recommender-engine-0.3.0.tar.gz
  • Upload date:
  • Size: 15.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.2

File hashes

Hashes for recommender-engine-0.3.0.tar.gz
Algorithm Hash digest
SHA256 e4271662d44b56f3aa23a2a443ecb727d18a403329dd61c77e582e2262959f66
MD5 d8c2ce56a85b6a4b4003bba437b09c99
BLAKE2b-256 fad0373cacf3904a79599ce1126b794651c2f974221f59bcf97a5623716c8269

See more details on using hashes here.

File details

Details for the file recommender_engine-0.3.0-py2.py3-none-any.whl.

File metadata

  • Download URL: recommender_engine-0.3.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 16.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.2

File hashes

Hashes for recommender_engine-0.3.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 bf22156c73c01fc52d24f33ad6b6d49509a074c495d3fe90d56eef6f506f9080
MD5 0297c0cfc15ac9199a2e998ae82c5c52
BLAKE2b-256 be6df4cab1427c9d6bfaac3e9798bede1a08b92307bc3c85ba1d4e9b55b2ab60

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page