thrivee skills
Transport Planner / Modeller — Consultancy
draftdata

Python for spatial & data analysis

Doing in code what you would otherwise do by clicking in QGIS — so it can be repeated over fifty wards, re-run when the data updates, and handed to someone else. The skill that separates a GIS operator from an urban data lead.

Needed across GIS / Urban-Data Analytics Lead, Transport Planner / Modeller — Consultancy

This skill is still in review, so checkout is unavailable.

Concepts
11
Selected clips
1h 52m
Employers use it
18

The videos are free

This is what you pay for

Compared → kept
33 → 20
Full videos → selected
5h 54m → 1h 52m
Concepts
11

Course outline

Learn from selected clips, concept by concept

Concept 1

Why write code when QGIS already has a button

free

Intro to PyQGIS – Automating Tasks with Python

GeoCortex AI and Consulting · English · beginner

View source ↗
00:0000:38 selected38s

Why this clip: Introduces how PyQGIS scripts automate repetitive manual clicking in QGIS.

Caution: High-level summary with minimal detailed code explanations.

Customization & Atomization QGIS using Python (webinar)

Geo Guru · English · intermediate

View source ↗
09:2510:55 selected1m 30s

Why this clip: The presenter outlines the core advantages of writing scripts over manual GUI actions, emphasizing time-saving automation and workflow consistency.

Caution: The QGIS application crashes twice during the live demonstration segment, causing minor delays.

Concept 2

Getting a working environment without losing a day

locked

After: why-python-for-spatial

Selected range
▮▮:▮▮ → ▮▮:▮▮
Clip retained
9m 29s kept
Video review
3 compared

Video title and channel appear once unlocked.

Concept 3

Tables in code: the DataFrame

locked

After: environment-and-notebooks

Selected range
▮▮:▮▮ → ▮▮:▮▮
Clip retained
4m 48s kept
Video review
3 compared

Video title and channel appear once unlocked.

Concept 4

Grouping, summarising and joining tables

locked

After: pandas-basics

Selected range
▮▮:▮▮ → ▮▮:▮▮
Clip retained
40m 20s kept
Video review
3 compared

Video title and channel appear once unlocked.

Concept 5

The GeoDataFrame: a table with a geometry column

locked

After: pandas-basics

Selected range
▮▮:▮▮ → ▮▮:▮▮
Clip retained
8m 02s kept
Video review
3 compared

Video title and channel appear once unlocked.

Concept 6

Coordinate systems in code, before they ruin the answer

locked

After: geodataframe

Selected range
▮▮:▮▮ → ▮▮:▮▮
Clip retained
5m 47s kept
Video review
3 compared

Video title and channel appear once unlocked.

Concept 7

Spatial join: which points fall in which polygon

locked

After: coordinate-systems, grouping-and-joining

Selected range
▮▮:▮▮ → ▮▮:▮▮
Clip retained
12m 15s kept
Video review
3 compared

Video title and channel appear once unlocked.

Concept 8

Buffers, overlays and dissolves

locked

After: coordinate-systems

Selected range
▮▮:▮▮ → ▮▮:▮▮
Clip retained
52s kept
Video review
3 compared

Video title and channel appear once unlocked.

Concept 9

Making a map that someone else can read

locked

After: geodataframe

Selected range
▮▮:▮▮ → ▮▮:▮▮
Clip retained
1m 12s kept
Video review
3 compared

Video title and channel appear once unlocked.

Concept 10

Pulling street networks and open data

locked

After: geometric-operations

Selected range
▮▮:▮▮ → ▮▮:▮▮
Clip retained
13m 24s kept
Video review
3 compared

Video title and channel appear once unlocked.

Concept 11

Turning it into something you can re-run

locked

After: spatial-join, mapping-in-python

Selected range
▮▮:▮▮ → ▮▮:▮▮
Clip retained
14m 05s kept
Video review
3 compared

Video title and channel appear once unlocked.

What was rejected

13 candidates did not meet the course criteria.

  • Does not explicitly discuss the rationale or benefits of scripting over standard QGIS GUI buttons.
  • Does not explain why geospatial dependencies (such as GDAL or C binaries) are historically tricky or awkward to install.
  • Does not include setting up Jupyter Notebook or an equivalent notebook interface.
  • Only shows reading and printing a CSV file; does not cover selecting columns or filtering rows by condition.
  • This video covers Pandas groupby aggregation in detail, but does not cover merging or joining tables.
  • This video uses the QGIS desktop user interface rather than programming code to handle coordinate reference systems.
  • Is map-projection theory or cartographic history with no code
  • Is a GUI GIS geoprocessing tutorial with no Python
  • Is a GUI GIS geoprocessing tutorial with no Python
  • produces a plot with no legend, labels or classification discussion
  • produces a plot with no legend, labels or classification discussion
  • Is manual downloading and importing of files with no programmatic fetch
  • The video has no audio narration and only demonstrates clipping a single file without wrapping the logic in a reusable function or batch loop.

Where this skill is used

GIS / Urban-Data Analytics Lead

Spatial-data and analytics roles — building GIS systems, remote-sensing pipelines, urban dashboards, and data products for planning clients, authorities, and tech/geospatial firms. Strong demand where planning meets data. Specialisation tags: Urban, Regional, Environmental (cross-cutting).

9 mapped employers

Explore path →

Transport Planner / Modeller — Consultancy

Private transport planning and modelling — travel-demand models, comprehensive mobility plans, transit/BRT/metro feasibility, and traffic micro-simulation, at firms like AECOM, WSP, Ramboll, L&T, and specialist mobility consultancies. Strong, named demand for modellers. Specialisation tags: Transport, Infrastructure.

10 mapped employers

Explore path →