I work for a business to business company with a data set containing approximately 2700 businesses as customers. For each business customer I have approx number of staff, location, industry, the sales rep managing their account and for the last 7 years how much profit I have made with each of them for each month. What data science/machine-learning/statistics techniques or analysis can I perform to use this data to select which businesses I should try to acquire as customers in the future? And what if any methods might be worth considering to enrich this data set?

  • 1
    $\begingroup$ What's insufficient with ORDER BY revenue DESC? $\endgroup$ – Has QUIT--Anony-Mousse Jun 20 '18 at 20:02
  • $\begingroup$ That does not solve my problem. Doing this would show me the most profitable customers that I have currently. I want to know based on known traits of potential customers (I don't have profitability for these) how profitable they are likely to be so that I can try to acquire more profitable customers in the future. $\endgroup$ – marcommunication Jun 20 '18 at 20:23
  • $\begingroup$ Then try to be more precise! $\endgroup$ – Has QUIT--Anony-Mousse Jun 20 '18 at 20:25
  • $\begingroup$ I think if you reread you'll see that I was. $\endgroup$ – marcommunication Jun 20 '18 at 22:03
  • 1
    $\begingroup$ The question was very clear. $\endgroup$ – Bruna w Jun 21 '18 at 17:53

You can use linear regression to model the relationship between the profit each customer has given you and the other variables: staff, location, industry, and so on.

With this technique, you will by the end obtain the regression coefficients for each considered variable. These coefficients will tell how one variable affects the profit, and then you'll be able to check things such as: do customers with more staff generate more profit? how much this profit increases for each staff member? and so on.

Also, with these coefficients, you can easily predict, for the potential costumers, how much would be their profits. This prediction is not perfect, as it is an associated error, but it can be very good if you specify the model properly. As there is a loooooot of material about this on the internet, I won't write much more.

I don't know how much you know about math, or intend to dive in this subject, but this article can help as a first introduction: https://towardsdatascience.com/mathematics-for-machine-learning-linear-regression-least-square-regression-de09cf53757c

Linear regression is, for sure, not the only solution for your problem, but it is a simple one, somewhere to start. You may also want to look (later) for regression tree models and models that take in account the longitudinal dependency of your data. Longitudinal means you have repeated measures for the same costumers along the time.

  • $\begingroup$ Thanks for your reply. I'm very familiar with regression. Initially a decision tree looks like a useful approach to explore the data. Don't you think that we would need to apply CLV model/analysis to determine the value of customers before doing this? And wouldn't this need to model churn and possibly how their profit each month changes as a timeseries? Also since the data is observational isn't there an issue with implying causality when using the model to select prospect customers in the future? $\endgroup$ – marcommunication Jun 22 '18 at 11:33

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