Python Foundation for Spatial Analysis
- Level
- Beginner
- Duration
- 12 hours4 sessions of 3 hours each over 2 weeks
- Prerequisites
- Familiarity with spatial data and basic GIS concepts.
Ways to take this course
Every course is free to study on your own. The live classes add certification, support and a cohort to work through it with.
Cohort-based, with certification
- Live instructor-led Zoom sessions
- Certificate of completion
- Lifetime technical support
- Mentoring
Next class: Oct 21–29, 2026
US$149 ยท ₹10500
Register for the next classLearning outcomes
- Knowledge of how to setup the Python environment and install packages.
- Ability to read and write spatial data, query web APIs, use geospatial packages and carry out basic geoprocessing tasks.
- Familiarity with data science libraries to scale your analysis to large datasets.
Course outline
- Session 1
Python Basics
- Introduction and Course Overview
- Variables
- Data Structures
- String Operations
- Loops and Conditionals
- Functions
- Session 2
Data Processing
- Understanding Coordinate Systems
- Python Standard Library and 3rd Party Library
- Using Web APIS
- Reading/Writing Files
- AssignmentGeocode Addresses with GeoPy
- Session 3
Tabular and Vector Data
- Introduction to Pandas and GeoPandas
- Tabular Data Analysis with Pandas
- Vector Data Analysis with GeoPandas
- Session 4
Raster Data and Scripting
- Introduction to Numpy and rioxarray
- Raster Data Analysis with rioxarray
- Building Scripts and Automating Workflows
- After the course
Class Project
-
Each participant will work on a project of their choice to complete within 2 weeks of the class. The topic can be selected by the participant or will be assigned by instructor based on their interest areas.
-
1-1 mentoring and email support will be available during the project.
-
See Example Projects completed by previous participants to get an idea of what you can achieve after taking this course.
-
Participants must complete the project to receive a completion certificate.
-
Certification
What participants say
Even more than the nice, friendly class format that Ujaval and Vigna always run, the really cool thing is how the class is current with the relevant, current best practices. For instance, in this class session, what was so nice to learn was the approach to use AI tools in Python programming in a useful, careful, and appropriate way.
Nitin PanditMentor
This is the second course I have taken with Spatial Thoughts and I am once again highly satisfied with Ujaval’s expertise and teaching style to learn complex topics. He is great at focusing on the critical building blocks to help his students independently create products by the end of the course.
Zach TorresWorld Vision
The Python Foundation for Spatial Analysis course by Spatial Thoughts was a highly valuable and practical learning experience. Prior to the training, I had little to no knowledge of Python, but the course provided a clear and well-structured introduction that helped me build a solid foundation.
I particularly appreciated the hands-on approach and the small class size, which made the learning environment more engaging and allowed for better interaction and understanding. Ujaval is a wonderful tutor, and the guidance provided throughout the course was both supportive and effective.
I am grateful for the opportunity to participate in this training, and I highly recommend it to anyone looking to develop practical skills in geospatial analysis using Python.
Vivian Ndidiamaka AsogwaLecturer, Department of Surveying and Geoinformatics, Federal Polytechnic Nekede, Owerri Imo State
I recently took the Python Foundations for Spatial Analysis course with Ujaval and Vigna. They created a supportive and engaging learning atmosphere which I really appreciated since this helped me focus on the class topics I was intimidated by.
During the class we covered APIs which I had been especially hesitant to dive into, but through the various exercises I became more comfortable and even ended up using two different APIs as part of my final class project. Grateful for Ujaval’s and Vigna’s encouragement! This class has boosted my confidence and I’m excited to keep trying new things.
Grecia WhiteProgram Manager, Massachusetts Clean Energy Center
An absolutely brilliant introduction to Python for spatial analysis! The course content is comprehensive and perfectly paced for beginners. I feel much more confident in my ability to use Python for my GIS work now. Thank you, Spatial Thoughts Team, for creating such a great resource!
Avishek AdhikariPostgraduate Student, Bangladesh University of Engineering and Technology
Well organized and executed. I learned a lot from this course, which will definitely be helpful in my professional career. Thanks a lot, Ujaval.
Lokesh BSConsultant - Geospatial Lab, Indian Institute for Human Settlements