I am working with a dataset that has enough observations and ~ 10 variables,

  • half of the variables are numeric
  • another half of the variables are categorical with 2-3 levels (demographics)
  • one ID variable
  • one last variable that has sales value, 0 for no sale and bill amount for sale

Using this information, I want to understand which segments of my customers to market. I am using R for code but that's not relevant here. :)

I am confused about which statistical technique to use. Since I want to identify what types of customers I want to acquire and build my campaigns, I was initially thinking of using k-means clustering, i.e. go with unsupervised learning.

However, considering I know who purchased and how much they purchased from the sales value figures, I believe it's worth including this information and have decided to go with predictive modeling instead. Here regression will only tell the importance of variables, but I am interested in nodes (for example, I want rules that can support my marketing campaign such as age 45+, from LA region...etc.) so decision tree would be a better fit.

What are your thoughts? Clustering or decision tree? Or actually something else?

  • 1
    $\begingroup$ You mention too many things. What is your goal exactly ? $\endgroup$
    – lcrmorin
    Apr 21, 2020 at 9:26

3 Answers 3


Since you have label data (i.e., sale amount), you can apply supervised machine learning.

After a model has been fit, the features that contributed to predicting targets can be found.

Decisions trees would be a relatively simple option because it easily handle the different types of features and can a yield a decision path.


I have a slightly different take and view this problem as one related to recommender systems.

Just like how one would recommend movies for users based on various approaches (involving both supervised and unsupervised methods), similarly you would recommend products to users.

So while you could start with using both unsupervised (clustering to segment your users esp. if data set is large) and supervised to models like DTs to peep into the model better, ultimately you should move towards the set of algos and methods used by recommender systems.


Both algorithms can be useful. Cluster Analysis is good for marketing to groups, and Decision Trees can give you specific rules as to what the best sub-segments are to market to (and the worst). But, no machine learning algorithm will give you an exact answer. It is OK to use both clustering and decision trees. You can compare their outputs and see if there is consensus between the two. If they reach opposite conclusions, in an overall sense, you need to go back to the drawing board and try to reconcile the differences.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.