Field note · September 9, 2025

What is deliberately wrong with ride-hail-trips

Eight thousand city ride-hail trips with fares, distances, surge multipliers and tips.

1 min read ·Data quality ·quality practice

What is deliberately wrong with ride-hail-trips.

8,000 rows, 10 columns, one row per completed trip. Eight thousand city ride-hail trips with fares, distances, surge multipliers and tips. Heavy right skew on fare, a rush-hour bimodal duration distribution, and a handful of impossible trips left in on purpose.

Fares follow a lognormal shape, so the mean sits well above the median — a good first lesson in why you should not report an average fare. Roughly 0.4% of rows have a distance_km of 0 with a non-zero fare: those are real-world cancellations that still billed, and they will wreck a naive fare-per-km calculation if you do not filter them.

Something to try: Compare median fare by hour of day; explain the two peaks. The SQL playground has it loaded already, and the data explorer will profile every column in one pass if you would rather look before you query.

sql
select *
from ride_hail_trips
limit 20;

The file is generated from a fixed seed, so the CSV you download today is byte-identical to the one from last year. That matters more than it sounds: it means a lesson can say "row 412 is the interesting one" and still be right in eighteen months.

Download it, break it, keep it. CC0 — no attribution required, no account, no email.