A wide variety of supervised and unsupervised machine learning methods using the scikit-learn library