https://medium.com/@oliwills8373/guide-to-implementing-k-means-clustering-algorithm-in-machine-learning-step-by-step-explanation-81c23f8242a