Geoprivacy & Anonymisation
A coordinate is an identifier. Release it as if it were one.
A pair of coordinates for a person's home is more identifying than their name, and nothing in a GeoDataFrame warns you about it. These guides start from what makes spatial data personal and how re-identification actually works, then walk the three defences in the order you should try them — aggregate, mask, add noise — measuring at each step both the protection gained and the analysis lost. They finish with the failures: masked points in the sea, suppressed cells that subtract back out, repeat releases that average to the truth, and the exact coordinates still sitting in the file you thought was safe.
Start here
The cornerstone guide — the whole workflow end to end. Everything after it goes deeper into one part of it.
Step 1 Geoprivacy explained: why coordinates are personal data geospatial privacy Begin the path →The full path, in order
20 guides: the concepts underneath the work, then each task, then the errors that task produces. Work down, or jump to the step you need.
- Re-identification risk in spatial data explained re-identification spatial data 🧭 Concept
- Spatial k-anonymity explained spatial k-anonymity 🧭 Concept
- Geomasking methods explained: donut, random and adaptive geomasking methods 🧭 Concept
- Aggregation and suppression rules explained small count suppression 🧭 Concept
- Differential privacy for spatial counts explained differential privacy spatial 🧭 Concept
- How to measure re-identification risk in a point dataset measure re-identification risk python ⚙️ How-To
- How to apply donut geomasking to sensitive points in Python donut geomasking python ⚙️ How-To
- How to aggregate points to units that meet a minimum count aggregate points minimum count ⚙️ How-To
- How to suppress small counts in a spatial table in Python suppress small counts python ⚙️ How-To
- How to add differentially private noise to spatial counts laplace noise counts python ⚙️ How-To
- How to reduce coordinate precision safely in Python reduce coordinate precision python ⚙️ How-To
- How to strip GPS coordinates from photo metadata in Python strip exif gps python ⚙️ How-To
- How to test whether GPS traces reveal where people live gps traces home location privacy ⚙️ How-To
- How to run a privacy check before publishing a spatial dataset spatial data privacy check ⚙️ How-To
- Geomasked points land in the sea or outside the study area geomasked points in water 🔧 Fix
- Anonymised points still identify individuals anonymised points still identify 🔧 Fix
- Suppressed cells can be recovered from the totals complementary suppression disclosure 🔧 Fix
- Geomasking changed the result of the analysis geomasking bias analysis 🔧 Fix
- A shared file still contains the original coordinates file still contains original coordinates 🔧 Fix
Topics this path covers
A path is a route; a topic is everything the site has on a subject. Open a topic to see the guides this path skips.