Welcome to Geospatial Data Science!#
On this website you will find the course materials for ECS 351L and 851L taught at the Nicholas School of the Environment at Duke University in Fall 2025.
Overview#
This course introduces students to the foundations of modern geospatial data science. The course will be taught as a series of short lectures and activities that explore the major components of a data science project. In the first part of the course, students will learn how to analyze vector, raster, and network data in Python and train a basic machine learning model to make predictions. All examples and assignments will be based on “real” data with analytical methods addressing contemporary environmental challenges in the USA. Next, students will learn about other important aspects of data science including data acquisition, scalability, and visualization. In the final part of the course, we will discuss some general principles for effective project management (e.g. version control, GitHub, etc.). This course will be best suited for students who already have some experience with programming and GIS. The skills developed during this course will enable students to conduct computational geoscience research and equip them for a career in (geospatial) data science.
A key part of this course is the group project which provides students with an opportunity to collaboratively apply their newly developed skills to topics of interest. Undergraduate students will conduct a contained research project (e.g. that replicates a single peer-reviewed journal article) and present it to the class orally. Graduate students will be expected to undertake a substantive final project that critically engages with current research, knowledges gaps, or debates in their field of interest. As well as an oral presentation, graduate students will be expected to write a short research paper based on the finding of their project.
Learning outcomes:#
Improve programming skills
Learn how think computationally and statistically
Solve real-world problems using spatial analysis
Run basic machine learning models
Manage a data science project using version control
Collaboratively develop a data science project
Communicate results of data science project orally and as a short write-up