I'm fiddling around with some data that represent grocery store transactions. The data are in the following form:
Each row represents a final transaction by a customer, with a column for user ID, timestamp of purchase, and basket contents. For example:
| ID | Timestamp | Basket |
| 12 | 2016-04-02 | ['Celery', 'Beets', 'Cheese'] |
The question I'm trying to answer is "How do I suggest an ideal basket to an individual customer?"
Problems I'm dealing with:
I can't seem to think past just suggesting the most frequently ordered items to a customer. Is there some technique that I'm missing here?
Since we have a customer ID, we can have multiple baskets for a customer over time. Because of this, I can't use apriori or eclat as those assume each transaction is independent.
How can I take into account seasonality with whatever technique I choose?
I'd really appreciate some general direction here, I'm having some serious analysis paralysis.