I have a problem that requires the prediction of the number of customers who will buy a product every month segmented on the date they came into the site. For example, my data looks like:
Customer | Start Date | Purchase Date | Predictors ...
A 2010-01-11 2010-02-01
B 2010-01-11 NULL
C 2010-01-11 NULL
D 2010-01-11 2010-01-15
E 2010-01-12 2010-01-18
F 2010-01-12 NULL
G 2010-01-12 2010-03-02
H 2010-01-13 NULL
I 2010-01-13 NULL
...
In the example, 2 customers converted from 2010-01-11
segment whereas, no customers in the 2010-01-13
segment bought the product.
I think there are multiple ways to approach this problem but cannot decide on a method. My question is three-fold.
1) Survival Analysis/Poisson Regression: I could use survival analysis to predict purchase but this would not help solve the time to purchase problem for customers who did purchase. Instead, I could try Poisson regression but I'm not sure how this would answer the purchase/non-purchase problem. Would a nested logistic model be appropriate in this case?
2) Improving prediction: I would like my predictor to keep getting more accurate as every month passes because the cumulative number of customers predicted should never decrease month-on-month. Would any model be more suitable to this assumption?
3) Time-Series for date segment: Instead of predicting for a customer, could I predict the number of customers who do purchase by date segment by month? Similar to obtaining multiple time-series and bootstrapping.
Update: It seems that a hurdle model approach is suited well to this problem. However, I have a problem.
1. My data does not have any 0
purchase dates but NULL
which represents not purchasing. This means that the time to purchase for a nonpurchasing user is NULL
. How can I transform my data so that there is a 0
hurdle?