Geospatial Data Science: Statistics and Machine Learning

Vector data analysis in Python with GeoPandas, statsmodels, and Scikit-learn

  Michael Miller

   Development, Data Science and AI ML, Machine Learning

  Language - English

   Published on 05/2021



In this course I demonstrate open source python packages for the analysis of vector-based geospatial data.  I use Jupyter Notebooks as an interactive Python environment.  GeoPandas is used for reading and storing geospatial data, exploratory data analysis, preparing data for use in statistical models (feature engineering, dealing with outlier and missing data, etc.), and simple plotting.  Statsmodels is used for statistical inference as it provides more detail on the explanatory power of individual explanatory variables and a framework for model selection.  Scikit-learn is used for machine learning applications as it includes many advanced machine learning algorithms, as well as tools for cross-validation, regularization, assessing model performance, and more.

This is a project-based course.  I use real data related to biodiversity in Mexico and walk through the entire process, from both a statistical inference and machine learning perspective.  I use linear regression as the basis for developing conceptual understanding of the methodology and then also discuss Poisson Regression, Logistic Regression, Decision trees, Random Forests, K-NN classification, and unsupervised classification methods such as K-means clustering.

Throughout the course, the focus is on geospatial data and special considerations for spatial data such as spatial joins, map plotting, and dealing with spatial autocorrelation.   

Important concepts including model selection, maximum likelihood estimation, differences between statistical inference and machine learning and more are explained conceptually in a manner intended for geospatial professionals rather than statisticians.

What Will I Get ?

  • Basic concepts of statistical modeling
  • Pandas tools for data preparation
  • Feature engineering methods
  • Linear Regression
  • Logistic Regression
  • Other supervised classification methods (CART, K NN, SVM, etc)
  • Unsupervised classification methods
  • Non-parametric regression


  • You should be familiar with Python, GeoPandas, and Jupyter Notebooks and have a working environment. This knowledge can be gained through my courses "Survey of Python for GIS applications" and "Geospatial Data Science with Python: GeoPandas
  • You should have some familiarity with basic statistics, especially Linear Regression.
Course Rating

    Feedbacks (0)

  • No Feedbacks Yet..!

We make use of cookies to improve our user experience. By using this website, you agree with our Cookies Policy.