29 Claim–Evidence Tables
This chapter is part of a book in active development and has not yet been through the author’s review. Content may change as the review advances.
The research decision. For every claim your work makes in public, decide which exact piece of evidence backs it, where that evidence lives, and what it does not establish. Then write all three in one row of a claim–evidence table, before the claim reaches anywhere a stranger can point at it.
29.1 Why this decision matters
The decision on the table: for each claim you make, which specific evidence backs it and where that evidence can be found.
“I point at one number on your board and ask where it came from. Walk me to the line that made it and I trust the whole poster. Say ‘it’s in the analysis somewhere’ and I stop believing every other number up there.” — a research-integrity judge working a poster hall
A poster is a set of promises made in public. Each headline number, each figure, each cited fact is a claim a stranger can test in ninety seconds. The dangerous gap is between a claim you can say and a claim you can back. A claim–evidence table closes that gap on purpose, before anyone points a finger, so the honesty is built into the work and not patched under pressure.
29.2 The concept
A claim–evidence table is a table with one row per claim, pairing each claim you make with the specific evidence behind it. Example: a row that reads “Store B sold about 1.4 times as many units per week as Store A” in the claim column, with the two weekly sales averages in the evidence column.
Four columns carry each row, and each is a term worth knowing.
- Claim. The statement you assert as true. Example: “turnout in these precincts was 61.3 percent.”
- Evidence. The exact result or source that backs the claim, with its uncertainty. Example: 30 sampled precincts giving 48,900 ballots against 79,800 registered voters, and the interval of ±1.8 points around the estimate.
- Trace. Where a number was actually produced, named precisely enough to open. A traceable number is one you can walk back to the notebook cell that computed it. Example: “cell 16, where
turnout = ballots.sum() / registered.sum()runs.” A number you cannot walk back, one typed from memory or rounded by hand, is an untraceable number, and it does not belong on the board. - Boundary. The claim boundary is the line between what the evidence licenses and what it does not (ALLEA – All European Academies 2023). Example: “one county, one midterm election, registered voters only, so this is not the statewide rate.”
Building the table is the skill. Once every claim has a filled row, an unbacked claim has nowhere to hide, because a blank cell is a visible hole (Munafò et al. 2017).
29.3 A worked example
You built a political-science poster reporting a turnout estimate: the share of registered voters who cast a ballot in one county’s midterm election. Your headline reads “turnout in these precincts was 61.3 percent.” Before the file goes to the printer, you build the table.
Row 1 (the headline). Claim: “turnout was 61.3 ± 1.8 percent.” Evidence: 30 sampled precincts, 47,871 ballots cast against 78,117 registered voters, with the spread of the 30 precinct-level rates giving the interval. Trace: cell 16, the line turnout = ballots.sum() / registered.sum(). Boundary: one county, one midterm, registered voters only, so nothing is claimed about statewide turnout or about eligible adults who never registered.
Filling Row 1 forces one honest catch. You reach for the trace and find the number on your draft board reads 63.0, not 61.3. You had quietly written the officially reported statewide figure instead of the one your cell printed. The table caught an untraceable number before a judge did.
Row 2 (a secondary claim). Claim: “the estimate barely moves when I change how a registration counts as active.” Evidence: under two reasonable definitions the estimates differ by less than your sampling spread. Trace: cell 18, the definition comparison. Boundary: only two definitions tested, so nothing is claimed about looser rolls that keep long-inactive registrations.
Two claims, two rows, every number walked back to a cell, every boundary written down. That table is the thing that lets your work survive a pointed finger.
Requiring every reported claim to trace to the line that produced it is the practical core of the reproducibility reforms (Munafò et al. 2017).
The block below is the traced cell itself. Run it, and the number it prints is the only one Row 1 may carry.
import numpy as np, pandas as pd
SEED = 464
rng = np.random.default_rng(SEED)
# Thirty sampled precincts: ballots cast and registered voters.
registered = rng.integers(2300, 3000, size=30)
rate = np.clip(rng.normal(0.625, 0.050, size=30), 0.35, 0.85)
ballots = np.round(registered * rate).astype(int)
turnout = ballots.sum() / registered.sum() # the traced line
spread = 1.96 * rate.std(ddof=1) / np.sqrt(len(rate)) * 100
print(f"precincts sampled : {len(registered)}")
print(f"ballots cast : {ballots.sum():,}")
print(f"registered voters : {registered.sum():,}")
print(f"turnout : {turnout*100:.1f} ± {spread:.1f} percent")
print("\nthat is the number your Trace cell must point at. any figure on the")
print("board that this line does not produce is untraceable, whoever published it")29.4 An AI failure case
You paste your poster text and ask an AI tool to build the whole claim–evidence table for you. It returns a clean, complete grid, every cell filled, and the trace column reads confidently: “turnout value from cell 14.” You almost accept it. Then you open cell 14, and it totals the registered voters; it never divides. The rate you report is produced two cells later, in cell 16. The tool guessed a plausible cell number and filled it with full confidence, and its tidy finished table hid the wrong trace behind a polished look.
You catch it by refusing to trust a trace you have not opened. Reading the actual cell, number in hand, is the whole discipline. A filled table is not a verified table.
29.5 It is your turn
You are working inside Studio 9: Write, bound, and disclose. Keep what you write here; the studio’s milestone chapter is where it joins the other lessons’ pieces into one artifact you can defend.
Your results are now worded as claims with boundaries; this step makes each one point at the evidence that backs it.
The hands-on half of this section lives in the chapter’s companion notebook: open it in Colab with the badge at the top, and work the steps there.
Commit your own draft table first, then delegate. Each prompt is a checkable job, not a request for a verdict.
None of these is a one-shot. You send the prompt, read the answer, push on the row that looks too smooth, and send it again. Agentic tools will do that iterating for you and hand back a finished table, which is exactly when to slow down. A table assembled over five invisible rounds still has to be opened cell by cell.
The wording of each claim, the judgment that a piece of evidence actually backs it, and the boundary each claim carries stay yours. An AI can list claims and draft rows, but it cannot open your notebook cell to confirm a number is real, and it cannot decide the evidence is honest enough to print. The call that the table is complete and the work is locked is yours to declare and defend.
Write one row per claim with four columns: claim, evidence, trace, boundary. Include the implicit claims, the ones your figures make without a sentence.
List every claim, so none is unbacked.
Here is my poster text: [paste it]. List every distinct claim it makes, one per row. For each, name what evidence a reader would need to see to believe it. Do not judge whether my evidence is good; just surface every claim, including implicit ones.After running, verify: check the list against your own table and add any claim you had not written a row for. Counters illusion of completeness (a tidy list that quietly skips the one claim with no evidence behind it).
Fill the evidence column with the actual result and its uncertainty, not a description of the result.
Fill the trace column by opening the cell or the source and reading the number off the screen. If you cannot open it, the row is not filled.
Locate the source for a cited fact.
Act as a reference assistant in political science. I want to cite the officially reported turnout for this county in this election. Name the figure and one real, retrievable source that reports it, such as a state or county election office release, and give me enough detail to find it myself. If you are not confident a source exists, say so instead of guessing.After running, verify: open the named source yourself and confirm it reports that value before it touches your poster. Counters confident fabrication (an invented citation arrives as confidently as a real one).
Write each boundary as a sentence about what the row does not establish, then hunt for blank cells. A blank cell is an unbacked claim, so either back it or cut the claim.
Red-team the claim–evidence match.
Here is one row of my claim-evidence table: claim "[paste]", evidence "[paste]". Act as a hostile reviewer. Tell me every way this evidence fails to license this claim, or claims more than it shows. Do not soften the claim for me; name the words that overreach.After running, verify: read each objection against your boundary column and reject any that asks you to concede something your evidence does license. Counters silent scope change (evidence for an easier claim, dressed up as backing the hard one).
Log it in your AI Research Ledger, and verify at least one traced number with a named method from the Verification Guide. An AI reviewer may run the check with you; the decision to accept or reject stays yours.