I am attempting to predict whether an individual is likely to complete an action given a set of input data about their actions on an ecommerce website.
Some of that data could be considered "factual". For instance, their name, how much they've spent in total, products they've bought, time since they last purchased.
Some of the data however could be considered "event" based. For instance, the time between two purchases, or the amount of time passed since the last action, or the offers on sale right now, or product they've bought.
I believe that in some cases the factual data will influence the action rate (e.g. someone has previously bought a lot, suggesting loyalty to the site) and in other cases the event data will influence it (e.g. today there is a 20% off sale site wide, suggesting more users are likely to ).
Is it better to learn off the event data (where each event is considered in isolation, and you potentially lose some of the aggregated data) or the aggregate data (where you potentially lose some of the nuance between events).
UserID,Timestamp,ThisOrderValue,TotalOrderValueEver,Offers,TimesActionPerformed
User1,Time0,£100,£100,20%,0
User1,Time1,£40,£140,15%,1
User1,Time2,£30,£170,15%,1
User1,Time3,£100,£270,NULL,2
User2,Time0,£10,£10,15%,0
User2,Time1,£100,£110,NULL,0
Or should I go for something that aggregates everything together, like this:
UserID,FirstSeen,LastSeen,FirstOrderValue,LastOrderValue,TotalOrderValueEver,OffersSeen,TimesPerformedAction
User1,Time0,Time2,£100,£30,£270,20%;15%,2
User2,Time0,Time1,£10,£100,£110,15%,0
My assumption would be that the second is correct to learn from, but throws away possible relevant data (such as the connection between the 20% off and the first purchase, or that they didn't perform the action until their second purchase).
Which makes more sense?