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?
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.