Predict Best Branch Locations For a Company I have a dataset of existing 156 branches of my company with the longitude and latitude of each branch. Now we want to open 10 more branches. How can we predict the best locations for opening the new branches using machine learning? As much as I have searched on google, I have gone through by using ARCGIS geo-spatial data or using openstreetmap but couldn't find all the steps properly. Therefore, Kindly guide me as I am a junior data scientist in my company and its my task to deliver the best locations.
This is a broad question, what I offer is one of many possible approaches; I will use R workflow (sf package to be exact).

The first step is to generate a grid covering your area of interest - city, country, continent, whatever :) Consider the approach described in this answer on StackOverflow. The size of the grid cells will depend on your company product - the catchment area of a corner shop is different from a catchment area of a strip mall.

The next step is link your store locations to grid cells - sf::st_intersects will be your friend here, and aggregate your desired metric (sales volume, new customer acquisition, or what not) per grid cell.

The third step is to find as much demographic and economic data as possible for administrative regions of your country (counties, districts, census areas...) - this will be country specific, so I cannot be your guide you here - and again link them to your grid.

The last step is creating a regression for desired output in a grid cell depending on the economic and demographic indicators.

Once you have a formula you can apply it to all the empty grid cells and pick the 10 most promising.

Edit [2019-01-22]: I have extended the suggested workflow into a blog post, you can view it at
http://www.jla-data.net/eng/branch-network-optimization-in-r/