Movement & time

GPS tracks and trajectories: cleaning them, segmenting them, and measuring what moved where.

A GPS track with one bad fix, and the implied speed that gives it away. one bad fix, and the trip travelled at 300 km/hone fix, 14 km awayimplied speedThe track looks plausible on a map; the speed between two consecutive fixes does not

A trajectory is points with timestamps, and almost every question about it is really a question about the intervals between them. Speed, stop detection, segmentation and map matching are all computed from consecutive pairs, which means one bad fix contaminates two legs rather than one.

GPS error is not noise around a true position: it is a mixture of small jitter, multipath in cities, and occasional fixes that land kilometres away. The track still looks plausible drawn on a map. What gives it away is the implied speed, which is why filtering by plausible velocity comes before anything else, and why a stop is defined by a radius and a duration rather than by a single point.

Below: the concepts cover what a trajectory is and what sampling rate costs you, the how-to guides clean, segment and summarise, and the fixes are the distances and speeds that come back impossible.

Learning paths run through this topic too — see the end of this page.

🧭 Start with the concepts

The ideas the how-to guides below assume you already have.

⚙️ Then do the task

Step-by-step walkthroughs with code you can copy and adapt.

Show every how-to guide in this topic

🔧 When it breaks

The errors this topic produces, with the cause explained rather than just the command.

Related topics

Subjects that keep coming up alongside this one, most overlap first.

Keep browsing

Movement & time sits in Analysis. Every topic on the site is listed on the topics index.