Skip to content

akhilchibber/Customer-Behaviour-Prediction

Repository files navigation

Customer Behavior Analysis Challenge

Online Shopping

👋 Welcome to an exciting challenge!

We're thrilled to have you here! Your mission is to build a model that helps us dive deep into customer behavior and product trends. The sky's the limit when it comes to the architecture and data model you choose—we're looking for solutions that are accurate, flexible, and powerful enough to grow with our needs.

Table of Contents

📝 What You'll Be Doing

Here's what you'll be working on. We've turned the requirements into a fun checklist to help you keep track of your progress. Let's break it down!

Data Exploration & Visualization

Task Description Checklist
Total Transactions per Customer Create a cool descending plot showing the total number of transactions per customer. [ ]
Product Transaction Frequency Pick any product ID and show off its transaction frequency per month for 2018 with a slick plot. [ ]
Top 5 Products by Sales Find out which top 5 products have been the biggest moneymakers over the last six months. Bonus points if you can spot any seasonal trends! [ ]
Use Jupyter Notebook for Plots Generate all your awesome plots using Jupyter Notebook to keep things interactive and user-friendly. [ ]

Building the Magic

Task Description Checklist
Transaction Prediction Model Design a model that can predict the total number of transactions for the next three months per customer, using data up until January 2019. Don’t forget to evaluate its performance with some cool metrics and visuals! [ ]
Improve Existing Tests Got some existing tests? Make them even better to ensure top-notch accuracy and reliability in your analysis. [ ]
Ensure All Tests Pass Make sure all existing tests are implemented (if not already) and pass with flying colors. [ ]

Ready for Prime Time

Task Description Checklist
Follow the Coding Style Stick to the coding style guidelines—this will help keep your code clean, consistent, and easy to maintain. [ ]
Implement Linting Add linting to catch any sneaky errors and keep the code up to standard. [ ]
Pass CI Checks Ensure your project runs smoothly in the Continuous Integration (CI) pipeline, passing all checks and tests. [ ]
Refactor & Document If you hit a roadblock with the existing design, don’t sweat it—refactor the code and document your solution. It’s all part of the process! [ ]
Create an Architecture Schematic Use draw.io to create a schematic of the architecture you suggest for deploying the project. Include a link to your diagram. [ ]
Record an Architecture Video Record a video where you describe the architecture you’ve suggested, explaining why you chose it and how it fits the project’s needs. [ ]

🎁 Your Data Playground

The dataset you’ll be working with has three key features related to customer behavior:

  • Customer ID
  • Product
  • Timestamp

These will be your building blocks for all the exciting insights you're going to uncover.

Running the Project

Make sure you have DevEnv installed. Then you can easily run the project:

devenv shell # to enter the isolated environment

pytest # Make all of them pass!

🏆 How to Win

You're done when:

  • All the checks and tests pass.
  • The code meets our style guidelines.
  • The project is up and running perfectly on CI.
  • You’ve created and shared your architecture schematic and accompanying video.

Most importantly, have fun with it! We can’t wait to see what you come up with. 🍀 Good luck!