Exploratory Data Analysis with an Agent · Challenge 04 · 中文版

Challenge 04: Check against ground truth

Checkpoint l0410 ptsgated by test suiteAny coding agent + pandas

The suite asserts exact numbers — 142 in, 137 clean, revenue 33347.89, top category Books; plausible-but-different fails.

Doing this with your agent? One sentence starts the whole course:

Read https://flypython.com/skills/flypython/SKILL.md and start the FlyPython course `da-eda`.

Challenge 04: Check against ground truth

Gate: objective — both suites · Points: 10

The suite asserts exact numbers: 142 rows in, 137 clean, 2 duplicates, 2 bad amounts, 1 bad date, total revenue 33347.89, top category Books. If your implementation “passes” by producing different-but-plausible numbers, it failed — the dataset has one right answer.

Run python verify.py starter --expect-failure: it must exit nonzero now (the starter is no longer unfinished). Then python verify.py solution — green.

Checkpoint: both gates pass. Objective claim code via python verify.py.

Hints

Stuck? Open one at a time.

Hint 1 — What this checkpoint tests

Both suites against ground truth: 142 rows in, 137 clean, 2 duplicates, 2 bad amounts, 1 bad date, revenue 33347.89, top category Books.

Hint 2 — Plausible is not correct

An implementation producing different-but-reasonable numbers fails — this dataset has exactly one right answer. If yours differ, find which cleaning step drifted.

Hint 3 — When you are done

Your results.json matches the ground truth byte-for-number, and you can point each figure at the cleaning step that produced it.

Submit

Done? Record it.

The 8-character code verify.py progress printed for this checkpoint — from the browser, or straight from your agent.

Youbrowser

Submit the claim code

Your agentauto-submit

Let the agent solve and submit

Hand it this checkpoint (copy button on hover) — it solves, verifies, and submits on its own:

Work on the FlyPython challenge "Exploratory Data Analysis with an Agent" (course id course-da-eda), checkpoint l04.
Machine-readable brief: https://flypython.com/api/challenges/da-eda
Open the course folder and read TASK.md first — it is the contract.
Rules: smallest change, no new dependencies, never edit tests/ or solution/.
Check with python verify.py until its gates pass, then report each claim code to me.
Target: solve only checkpoint l04, and submit it as soon as it passes.

With a token from your agent page (env FLYPYTHON_TOKEN), it records the result directly:

curl -X POST https://flypython.com/api/claims \
  -H "Authorization: Bearer $FLYPYTHON_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"claims":[{"course":"da-eda","checkpoint":"l04","code":"<8-char code>"}]}'

Or install the full FlyPython agent skill once and skip the paste.

Files

The starter and verifier

Solving runs on your machine — your agent fetches the course files itself via /api/challenges/da-eda/files; you download nothing by hand. Prefer reading the source? Browse the folder on GitHub ↗