Python for GIS and Geoscience
Target group
PhD candidates (research fields: engineering and natural sciences)
This course is intended for researchers that have at least basic programming skills in Python. A basic (scientific) programming course that is part of the regular curriculum of bioscience engineering / engineering / sciences should suffice. For those who have experience in another programming language (e.g. Matlab, R, ...), following an online Python tutorial prior to the course is mandatory.
Abstract
This course will teach the students to work with geospatial data, both vector and raster data, in Python. It will focus on introducing the main Python packages for handling such data (GeoPandas, numpy and rasterio, xarray) and how to use those packages for importing, exploring and manipulating geospatial data.
Topic and description
An important aspect of daily work in geographic information science and earth sciences is the handling of potentially large amounts of data. Reading in spatial data, exploring the data, creating visualisations and preparing the data for further analysis may become tedious tasks. Hence, increasing efficiency and reproducibility in this process without the need of a GUI interface is beneficial for many scientists. The usage of high-level scripting languages such as R and Python are increasingly popular for these tasks thanks to the development of GIS oriented packages.
This course trains students to use Python effectively to do these tasks, with a focus on geospatial data. It will cover both vector and raster data. The course will focus on introducing the main Python packages for handling such data (GeoPandas, numpy and rasterio, xarray) and how to use those packages for importing, exploring, visualizing and manipulating geospatial data. It is the aim to give the students an understanding of the data structures used in Python to represent geospatial data (geospatial dataframes, (multi-dimensional) arrays and composite netCDF-like multi-dimensional datasets), while also providing pointers to the broader ecosystem of Python packages for GIS and geosciences.
Aim & scope
This course targets researchers that want to enhance their general data manipulation and analysis skills in Python specifically for handling geospatial data.
The course does not aim to provide a course in specific spatial analysis and statistics, cartography, remote sensing, OGC web services, ... or general Geographical Information Management (GIS). It aims to provide researchers the means to effectively tackle commonly encountered spatial data handling tasks in order to increase the overall efficiency of the research. The course does not tackle desktop GIS Python extensions such as arcpy or pyqgis.
Program
The course is scheduled as a three day course mainly consisting of hands-on practice. A tentative program looks like:
- Day 1: Setting up the programming environment with the required packages using the conda package manager, a re-cap of Python concepts and introduction to GeoPandas and related packages to work with geospatial vector data.
- Day 2: An introduction to xarray (and rasterio) for working with raster data. More advanced features of GeoPandas for spatial joins and overlays. Combining raster and vector data and more advanced plotting. The acquired skills will immediately be brought into practice to handle real-world data sets.
- Day 3: An introduction to xarray for multi-dimensional netCDF-like datasets. Further case studies to apply the learned skills of the full workshop. The day will end with an overview of other packages that are being used in the geospatial Python ecosystem (to scale to bigger datasets, other visualization frameworks, specialized packages).
Dates and Venue
-
12, 16 and 19 December 2024 (9:00-17:00)
-
Alan Turing (Campus Sterre, S9)
Course material
All the course material will be available on github. The course consists of hands-on sessions, making use of Jupyter notebooks.
The materials from last year’s course can be found here.
You need to bring your own laptop.
Organizing Committee
Prof. dr. ir. Frieke Van Coillie (Remote Sensing | Spatial Analysis lab (REMOSA))
Prof. dr. Nico Van de Weghe (CartoGIS research group, Department of Geography)
Lecturers
-
Joris Van den Bossche is a maintainer of Pandas, the main data analysis library in Python, and GeoPandas, a package extending Pandas to work with geospatial vector data. He has developed a course for the DataCamp platform on geospatial data in Python. Formerly, he did a PhD at Ghent University (Faculty of Bio-science Engineering, Department of Mathematical Modelling, Statistics and Bio-informatics) and VITO in air quality research and is currently a freelance open source software developer and teacher, and working at Voltron Data on the Apache Arrow project.
-
Stijn Van Hoey is currently working as Research Software Engineer at Fluves, an engineering company operating in water and energy markets. Before that, he was Research Software Engineer and Open Data Publisher at INBO, supporting and automating the cleaning and publishing of data. Formerly, he did a PhD at Ghent University (Faculty of Bio-science Engineering, Department of Mathematical Modelling, Statistics and Bio-informatics) and VITO.
Registration
Register here.
Please note that we will first verify your eligibility to participate. Due to limited places, priority is given to PhD students and postdocs. Your registration will be confirmed by a separate email, including an Outlook invite.
Registration fee
Free of charge for members of the Doctoral School
Number of participants
Maximum 25 PhD candidates
Language
English
Evaluation criteria (doctoral training programme)
Active participation
After successful participation, the Doctoral School will add this course to your curriculum of the Doctoral Training Programme in Oasis. Please note that this takes up to one to two months after completion of the course.