https://openstack.pythonprogramminghelp.com/how-to-get-rid-of-multi-co-linearity/