Determining correlated product categories using store purchase history I have a large dataset that contains product purchase history, like so:

userID  productID   category        subcategory
123     ABC         Kitchen         Knives
123     BEA         Kitchen         Organization
233     ZZS         Electronics     Phones


For a first project, I'm looking to answer the question: "What discrete groups of categories/subcategories do shoppers tend to shop in?". For example, we may find that shoppers who buy Monitors are highly likely to buy Keyboards and Mice as well.

Any direction on getting started on a problem like this is appreciated!
This is classic market basket analysis.

Clustering is the weong tool, you want frequent item set mining and association rules instead.

https://en.wikipedia.org/wiki/Association_rule_learning