Introduction to geospatial Python

This course teaches you how to do different geospatial related tasks in Python programming language. Each lesson is a tutorial with specific topic(s) where the aim is to learn how to solve common GIS-related problems and tasks using open-source Python tools. In the lessons we use only publicly available data which can be used and downloaded by anyone anywhere. The course is based on Helsinki University’s course Automating GIS processes.

Topics of the course

  • GIS in Python; Spatial Data Model, Geometric Objects, Shapely
  • Working with (Geo)DataFrames
  • Geocoding and spatial queries
  • Geometric operations, reclassifying data
  • Visualization, static and interactive maps
  • OSM data aquisition and simple network analysis
  • Raster data processing in Python


Basics of geoinformatics and Python; no earlier experience with Python GIS packages is needed.

If you need to refresh your Python skills you can go through the materials of Helsinki University’s GeoPython course.


This course will be offered in person as well as online. Please note though, that the course experience will be better in person. For participants joining the course on site in Espoo, lunch and a snack is included in the price.

We’ll use CSC Notebooks with JupyterLab for exercises, no local installations are needed.


Day 1, Monday

9:00-10:30Lesson 1: GIS in Python; Spatial Data Model, Geometric Objects, Shapely
10:30-10:45Coffee break
10:45-12:15Lesson 1 continues
12.15-13:00Lunch break
13:00-14:30Lesson 2: Working with (Geo)DataFrames
14:30-14:45Coffee break
14:45-16:15Lesson 2 continues

Day 2, Tuesday

9:00-10:30Lesson 3: Geocoding and spatial queries
10:30-10:45Coffee break
10:45-12:15Lesson 3 continues
12.15-13:00Lunch break
13:00-13:15Running geospatial Python scripts on the supercomputer
13:15-14:30Lesson 4: Geometric operations, reclassifying data
14:30-14:45Coffee break
14:45-16:15Lesson 4 continues

Day 3, Wednesday

9:00-10:30Lesson 5: Map visualisation
10:30-10:45Coffee break
10:45-12:15Lesson 6: OSM data acquisition and network analysis
12.15-13:00Lunch break
13:00-14:30Lesson 7: Raster data processing in Python
14:30-14:45Coffee break
14:45-16:15Lesson 7 continues


Kamyar Hasanzadeh, University of Helsinki

Support: Samantha Wittke, CSC and Kylli Ek, CSC


  • EUR 180 (+24% VAT) for Finnish Universities or institutions for higher education & Finnish state research institutions or government organizations
  • EUR 840 (+24% VAT) for Other

Registration deadline: 25.02.24


Payment can be made with electronic invoicing, credit card, or direct bank transfer. Note that for electronic invoicing you need the operator and e-invoicing address (OVT code) of your organization. Please also note that invoice reference is needed for electronic invoicing in your organization, so please have this available when registering.