Here are some Python scripts and Jupyter Notebooks for manipulating and processing Sentinel 2 images with Rasterio. Remote Sensing indicators, like NDVI, are calculated using the different bands from the images. Also, vectorial data processing is made with Geopandas.
Results are used to train simple supervised ML models, like Random Forest and Knn. Finally, some unsupervised Machine Learning models are used.