Problems
Real geospatial problems, graded automatically. Choose a track, a level and what you want to hand in.
- Not started, Can the cycle parking feed report real capacity?Data preparationSQLData ManagementbeginnerDifficulty: beginner130 XP~25 min7 checksData ManagementbeginnerDifficulty: beginner
Clean a Berlin cycle parking staging table for an operations map and capacity rollup.
You hand in a spatial SQL query.
Dataset
- Berlin bicycle parking capacity staging · Point · 27 features · EPSG:4326
What you’ll do
- Resolve source precedence before casting.
- Keep unknown capacity distinct from zero.
- Return geometry for the operational map.
data-preparationberlinsqlAlso trains PostGIS / SQLOpen problem - Not started, Make the pharmacy handover loadableData preparationPythonData ManagementbeginnerDifficulty: beginner125 XP~25 min6 checksData ManagementbeginnerDifficulty: beginner
Repair a field table so a Paris health directory can map its pharmacy locations reliably.
You hand in a Python script.
Dataset
- Raw Paris pharmacy handover · Table · 21 rows · EPSG:4326
What you’ll do
- Parse and validate coordinates before constructing point geometry.
- Preserve the first source record for each reference.
- Deliver a typed, spatially plausible point layer.
data-preparationcoordinatesquality-controlparisAlso trains PythonOpen problem - Not started, Package one playground location per source featureData preparationDataset fileData ManagementbeginnerDifficulty: beginner130 XP~30 min6 checksData ManagementbeginnerDifficulty: beginner
Turn mixed playground points and areas into a projected GeoPackage site directory.
You hand in a prepared dataset file.
Dataset
- Sydney playground mixed-geometry source · Point · 8 features · EPSG:4326
What you’ll do
- Convert mixed source geometry into a consistent site layer.
- Reproject coordinates to the receiving metric CRS.
- Package exact schema and layer name in GeoPackage.
data-preparationsydneyfileAlso trains Spatial AnalysisOpen problem - Not started, What is Greater London made of?Raster analysisAnswersRemote SensingbeginnerDifficulty: beginner
A class histogram on a 10 m land-cover raster: the shares a planning document quotes, and the reason a pixel count is not quite an area.
You hand in your answers as values.
Dataset
- Greater London land cover 2021 (ESA WorldCover 10 m) · Raster · EPSG:4326
What you’ll do
- Read a categorical raster and count pixels per class
- Express classes as shares of the valid pixels
- State what the number is and is not
land coverWorldCoverhistogramrasterLondonAlso trains Data ManagementOpen problem - Not started, Which airport codes will break the schedule join?Data qualityAnswersData ManagementbeginnerDifficulty: beginner130 XP~25 min5 checksData ManagementbeginnerDifficulty: beginner
Audit a registry's identifiers before they become a join key: missing, malformed and duplicated codes, and positions that are only approximate.
You hand in your answers as values.
Dataset
- World airports · Point · 893 features · EPSG:4326
What you’ll do
- Find nulls, duplicates and malformed values in an identifier column
- Distinguish a key defect from a position defect
- Report counts the integration can be sized against
data qualityidentifiersjoin keysaviationAlso trains PythonOpen problem - Not started, Which airports sit inside a city?Spatial analysisGeoJSONSpatial AnalysisbeginnerDifficulty: beginner130 XP~20 min5 checksSpatial AnalysisbeginnerDifficulty: beginner
Point-in-polygon screening: the airports whose point falls inside a built-up footprint, for a noise-exposure programme.
You hand in a GeoJSON result.
Datasets
- World airports · Point · 893 features · EPSG:4326
- Urban areas · Polygon · 2,143 features · EPSG:4326
What you’ll do
- Test each point for containment in any polygon of a second layer
- Return the qualifying points once each, with their attributes
point-in-polygonspatial joinscreeningaviationglobalAlso trains Data ManagementOpen problem - Not started, Which boroughs is the cycle-hire scheme actually in?Spatial analysisGeoJSONSpatial AnalysisbeginnerDifficulty: beginner130 XP~25 min6 checksSpatial AnalysisbeginnerDifficulty: beginner
Join 799 docking stations to 33 boroughs and rank them by docks per square kilometre.
You hand in a GeoJSON result.
Datasets
- London boroughs · Polygon · 33 features · EPSG:4326
- Santander Cycles docking stations (live snapshot) · Point · 799 features · EPSG:4326
What you’ll do
- Spatially join docking stations to the borough that contains them
- Sum docking points per borough without dropping the boroughs that have none
- Measure borough area in a metric CRS and compute docks per km²
spatial joinaggregationCRStransportLondonAlso trains Data ManagementOpen problem