Data Analysis Brief
Puts a question to a dataset, and states the limits of the answer at the same length as the answer.
Deliverable
One Markdown document, analysis-brief.md, in the structure set out under Output below. It takes the question and the analysis plan fixed by Research Plan Design.
Required inputs
- The question — what is being asked of the data, and the decision that turns on the answer.
- The dataset — the data itself, reachable rather than described, with whatever documentation exists for it.
Without both, stop. A dataset with no question attached invites the analyst to find something, and something is always there. Never analyse a dataset from a summary of it.
Optional inputs
- The dataset's provenance: who collected it, how, and for what purpose
- The period the data covers, and any gaps within that period
- A data dictionary, schema or set of field definitions
- Known collection changes, outages or instrumentation changes within the period
- Earlier analyses of the same data, and what they concluded
- The certainty the decision requires before it can be taken
Where provenance is not supplied it is recorded as unknown and every finding is marked conditional on it. A dataset whose origin cannot be established is reported as such rather than analysed as though it could be.
Execution
1 — Put the question in analysable form. Restate it so that it names the population present in the data, the quantity in question, and the period. A question the dataset's fields cannot address is reported as unanswerable by this data, together with the fields that would be needed to address it.
2 — Establish provenance before touching the data. Who collected it, how, for what purpose, over what period, and what changed during that period. Data collected for one purpose carries the shape of that purpose into every later analysis of it, and that shape is easiest to see before the data is.
3 — Profile the dataset as received. Record the count of records, the fields present, the missing values per field, the range of each field the question touches, and the duplicates found — every one of them counted from the data rather than estimated from a sample of it.
4 — Record every cleaning decision and what it removed. Each exclusion, correction and transformation, with the rule applied, the count of records it affected, and the reason. A cleaning step that cannot be justified in one sentence is reverted rather than kept and footnoted.
5 — Run only analysis you can describe. State the method, what it assumes, and whether this data meets those assumptions. Where it does not, change the method or report the question as unanswered by this data. An analysis whose assumptions the data breaks produces a number, not an answer.
6 — Report the finding with its uncertainty. The result, how it was arrived at, how precise it is, and how far it moves when the cleaning decisions in step 4 are made differently. A finding that changes under a defensible alternative cleaning choice is reported as unstable, with both results shown.
7 — Write the limits. What this data cannot answer, what else could produce the same result, and where a relationship in the data is being read as more than a relationship. This section is required rather than optional: a brief delivered without it is incomplete, whatever the finding says.
Output
analysis-brief.md, in this order:
- 1. Question — in analysable form, with the decision it serves and that decision's owner
- 2. Dataset and provenance — who collected it, how, for what purpose, the period covered, and
unknown where that is what is known
- 3. Profile as received — records, fields, missing values per field, ranges, duplicates
- 4. Cleaning — one line per decision: the rule, the records it affected, and the reason
- 5. Method — the method, its assumptions, and whether this data meets them
- 6. Finding — the result, its precision, and how it responds to the cleaning decisions in section 4
- 7. Limits — what this data cannot answer, and what else would produce the same result
- 8. Causation — where a relationship is being read as a cause, and what would be needed to establish one
- 9. Open questions — the question, what it blocks, who can answer it
Validation
The brief is ready when all of these hold:
- Section 2 names a provenance or states
unknown, and section 6 is marked conditional wherever it is unknown
- Every cleaning decision in section 4 carries its rule and the records it affected
- Section 5 states the method's assumptions and whether this data meets them
- Every figure in section 6 was computed from the supplied dataset and from nothing else
- Section 7 is non-empty and names at least one question this data cannot answer
- No relationship is described as a cause anywhere outside section 8
Fail the run if the brief is delivered without section 7, or if a figure appears that was not computed from the supplied dataset.
Failure handling
- No dataset supplied — stop. Report that there is nothing to analyse, and name the fields the question would require.
- The dataset cannot be reached — record the attempt and its date, deliver section 1 and section 9 only, and name who can grant access. Never analyse a dataset from a description of it.
- The dataset cannot answer the question — where it is too small, too biased, or breaks the method's assumptions, report exactly that and what makes it so, and deliver sections 1 to 4 and 9 only. Do not deliver the number an unsuitable method produced with a caveat beside it.
- The dataset contradicts another supplied source — record both, name what each rests on, and leave the question unsettled in section 9. Do not adjust the data until it agrees.
- Partial data — analyse the period the data covers, state the gap and what caused it in section 7, and mark the brief
PARTIAL — <period> only.