Dr. Alex Haberlie
Department of Earth, Atmosphere and Environment
Northern Illinois University
EAE 483 / 583: Data Science for the Geosciences (Spring 2026)¶
What is this course about?¶
This course is for advanced undergraduate students and graduate students who have computer programming experience and want to develop their data science skills on applied projects in the geosciences. It is intended to be the second course in a geoscience data analytics sequence that starts with “Computer Programming in the Geosciences (EAE 493)”. Students will research case studies involving data ethics, apply best practices in scientific software engineering, and develop workflows that solve geoscience problems using machine learning and statistics.
Course Content¶
Chapter 7 - Geospatial Analysis¶
7.3 - Vector Data Analysis
7.4 - Raster Data Analysis
7.5 - Spatial Statistics
L1 - Lab 1: Colab and Github
L4 - Lab 4: xarray
A1 - Assignment 1 - Spatiotemporal Frequency Analysis
Chapter 8 - Machine Learning - Tabular Data¶
8.1 - Machine Learning Overview
8.2 - Clustering
8.3 - Decision Trees
8.4 - Random Forest
8.5 - Model Evaluation
8.6 - Model Selection
L5 - Lab 5: scikit-learn preprocessing
L6 - Lab 6: scikit-learn clustering
L7 - Lab 7: scikit-learn classification
L8 - Lab 8: scikit-learn model selection and evaluation
A2 - Assignment 2 - Geoscience Data Clustering
A3 - Assignment 3 - Geoscience Data Classification
Chapter 9 - Machine Learning - Geospatial Data¶
9.1 - Digital Image Processing
9.2 - Image Segmentation
9.3 - Image Filters
9.4 - Image Feature Detection
9.5 - Image Classification
9.6 - Pixel Classification
L9 - Lab 9: scikit-image - basic operations
L10 - Lab 10: scikit-image - segmentation
L11 - Lab 11: scikit-image - filters
L12 - Lab 12: scikit-learn - image classification
L13 - Lab 13: pytorch - image classification
L14 - Lab 14: pytorch - pixel classification
A4 - Assignment 4 - Object Detection and Description
A5 - Assignment 5 - Object Classification
EAE 493 / 593: Computer Programming for the Geosciences (Fall 2025)¶
What is this course about?¶
Introductory programming techniques used to process and visualize geospatial data. Programming in Python, basic program logic and control structures, integration of Python with open-source scientific programming libraries, and 2-D and 3-D visualization of geospatial data.