How to best accommodate snapshots of data over time into a single dataset for training Say we have customers who acquire or not a product, and we have snapshots of the customer's profile monthly, with the information if at that given month they acquired or not (binary label).
I have two questions:
(1) What should be the best way to handle this dataset; concatenating the information as columns (for say, the last 3 snapshots so that the model can find a trend), with only the result of the last month? Or appending the snapshots as rows, and do some aggregated calculations (for example, averages for the same customer, how many times it acquired the product in the past x months, etc)
(2) If I go with the appending rows route, I guess all the aggregations have to consider only the previous rows based on the time on the snapshot (otherwise, I guess there would be a leakage of information), but how would I manage a cross validation scenario, should I take a specific caution here?
It would depend on the approach you want to take...
Based on the information you gave, I could imagine turning the data into a classification problem, whereby you cluster in the feature space of the various customer profile features. You could train the classifier on a &quot;did buy&quot;/&quot;didn't buy&quot; column.
The descriptive statistics you mentioned could also be valuable. I would recommend doing a mixed method approach and see which yield the most interesting results