Instacart Market Basket Analysis - Reorder Analysis


InstaCart market basket analysis was a Kaggle competition that was open early 2016 and was conducted by Instacart. Instacart, a grocery ordering and delivery app, aims to make it easy to fill refrigerator and pantry with personal favorites and staples when needed. After selecting products through the Instacart app, personal shoppers review the order and do the in-store shopping and delivery for customers.

Instacart uses transactional data to develop models that predict which products a user will buy again, try for the first time, or add to their cart next during a session. The objective for this competition was to use anonymized data on customer orders over time to predict which previously purchased products will be in a user’s next order.

Data was provided as separate datasets with specific entities such as orders, products, reorders, etc. The datasets had to be combined appropriately for data analysis and visualization as well as for modeling. Data provided had no missing or null values. The training and test set were combined in a single dataset and had to be separated into different datasets. The training set contained 131209 rows, the test set contained 75000 and a prior set containing reorders contained over 3 million records. Due to computing restrains, this dataset was reduced to 300K rows for modeling.

Exploratory Data Analysis (EDA)

  1. Number of products in each department

The following plot helps us understand how Instacart has stocked products by department. Based on the plot, the most number of products is available under the personal care department. Followed by snacks and pantry.

2. Number of products in each aisle

The following plot helps us understand how Instacart has stocked products by aisle. Based on the plot, the most number of products is available under the candy chocolates. Followed by ice cream and vitamin supplements. This contradicts with the number of products by department. However, let's analyze further.


















3.  Number of products based on department and aisles

The following  plots divides the number of products among aisles and department. The highest number of products in personal care is vitamin supplements which was also one of the highest number of products based on aisles. Similarly candy chocolates is the highest under the department Snacks. So now we find a relationship between the number of products in department and in aisles.





4. Number of reorders in training set and priorset

There is more reorders in the prior set which is quite obvious considering the numbers of rows in the prior set

5.  Reorder for each day in training set and prior set

The reorders in both dataset are quite same. The highest reorder happening on day 0 which we assume is a Sunday, followed by a Monday and then on a Saturday

Data Modeling

Using Apriori algorithm the following set of items were obtained that were a possibility of being reordered by itself or with other items. Due to constraints of computing and time, the entire analysis could not get further than this.  With more time and computing available, I would like to perform more algorithms and more analysis on the models obtained to ensure the model is close to accurate.

support itemsets
0 0.106786 [100 Calorie Per Bag Popcorn]
1 0.097220 [100% Raw Coconut Water]
2 0.086337 [100% Recycled Paper Towels]
3 0.175343 [100% Whole Wheat Bread]
4 0.133578 [2% Reduced Fat Milk]
5 0.061625 [Aged White Cheddar Baked Rice & Corn Puffs Gl...
6 0.052405 [All Natural Marinara Sauce]
7 0.055733 [Almonds & Sea Salt in Dark Chocolate]
8 0.192673 [Apple Honeycrisp Organic]
9 0.163386 [Asparagus]
10 0.078573 [Backyard Barbeque Potato Chips]
11 0.715444 [Bag of Organic Bananas]
12 0.082421 [Baked Aged White Cheddar Rice and Corn Puffs]
13 0.053965 [Baked Rice and Corn Puffs, Aged White Cheddar]
14 0.976986 [Banana]
15 0.095210 [Bartlett Pears]
16 0.059753 [Blackberries]
17 0.179052 [Blueberries]
18 0.050326 [Blueberry on the Bottom Nonfat Greek Yogurt]
19 0.066269 [Boneless Skinless Chicken Breasts]
20 0.099473 [Broccoli Crown]
21 0.076113 [Bunched Cilantro]
22 0.080757 [Cantaloupe]
23 0.131776 [Carrots]
24 0.057258 [Cereal]
25 0.078435 [Cherubs Heavenly Salad Tomatoes]
26 0.228338 [Chips Ahoy! Chewy Cookies]
27 0.055421 [Chips Ahoy!/Nutter Butter/Oreo Cookies]
28 0.145501 [Chocolate Chip Cookies]
29 0.227818 [Chocolate Sandwich Cookies]
... ... ...
257 0.060862 [Sweet Potato Tortilla Chips]
258 0.169382 [Swiss Rolls]
259 0.050083 [Tortilla Chips, Clasico, Jalapeno Lime]
260 0.063635 [Total 0% Greek Yogurt]
261 0.084119 [Total 2% All Natural Greek Strained Yogurt wi...
262 0.054970 [Total 2% All Natural Low Fat 2% Milkfat Greek...
263 0.070602 [Total 2% Greek Strained Yogurt with Cherry 5....
264 0.070012 [Total 2% Lowfat Greek Strained Yogurt With Bl...
265 0.073998 [Total 2% Lowfat Greek Strained Yogurt with Pe...
266 0.110634 [Total 2% with Strawberry Lowfat Greek Straine...
267 0.148621 [Uncured Genoa Salami]
268 0.068834 [Unsalted Butter]
269 0.130840 [Unsweetened Almondmilk]
270 0.092576 [Unsweetened Original Almond Breeze Almond Milk]
271 0.093546 [Unsweetened Vanilla Almond Milk]
272 0.066235 [Vanilla Almond Breeze Almond Milk]
273 0.092195 [Vanilla Animal Cookies]
274 0.358797 [Vanilla Sandwich Creme Cookies]
275 0.053133 [Vanilla Skyr Nonfat Yogurt]
276 0.240053 [Vegan Oatmeal Chocolate Chip Cookies]
277 0.058783 [Vegan Oatmeal Raisin Cookies]
278 0.084362 [Watermelon Chunks]
279 0.104222 [Whipped Cream Cheese]
280 0.203209 [White Chocolate Macadamia Nut Cookies]
281 0.058575 [White Chocolate Macadamia Nut Energy Bar]
282 0.128275 [Whole Milk]
283 0.455462 [Whole Wheat Cookies Dark Chocolate]
284 0.065957 [XL Emerald White Seedless Grapes]
285 0.129350 [Yellow Onions]
286 0.083634 [YoKids Squeezers Organic Low-Fat Yogurt, Stra...

287 rows × 2 columns

Annie George
Annie George has more than a decade of experience using mainframe technology and databases such as DB2 and SQLServer to achieve results for organizations in the private sectors. Annie completed her Bachelors in Civil Engineering but she found her passion in programming and data analysis as soon as she graduated. Annie currently works as a Systems Analyst. She has used her database and technology skills to analyze issues in the existing systems and has provided solutions to resolve the issues, thus, improving the system, customer service and the overall business process.

Leave a Reply

Your email address will not be published. Required fields are marked *