📚 This notebook implements a collaborative filtering-based recommendation system for book recommendations. It analyzes user-item interactions to suggest books that users might be interested in, thus enhancing personalized user experiences in the domain of book recommendation.
The dataset used in this notebook includes information about books, users, and ratings. It consists of the following files:
Books.csv
: Contains information about books such as ISBN, title, author, publication year, and publisher.Users.csv
: Includes information about users such as user ID, location, and age.Ratings.csv
: Contains user ratings for various books.
The notebook performs preprocessing tasks such as handling missing values and duplicates in the dataset.
Collaborative filtering is implemented to recommend books based on user-item interactions. It involves the following steps:
- Filtering out users who have given ratings to books more than 150 times.
- Selecting books that have received at least 50 ratings.
- Creating a pivot table of UserID vs. Books with ratings as values.
- Calculating cosine similarity between books to measure their similarity.
- Implementing a function to recommend similar books based on a given input book.
To use this notebook, follow these steps:
- Load the dataset.
- Preprocess the data to handle missing values and duplicates.
- Implement collaborative filtering to recommend books based on user-item interactions.
The notebook requires the following dependencies:
- NumPy
- pandas
- scikit-learn