Course resource
Data Analysis Prompt Pack
Prompts for working with numbers, and the rules that stop you shipping a confident wrong answer.
The two non-negotiables
1. Make it compute, never estimate. Language models predict text. Asked for a sum, a model without code execution will produce a plausible-looking number. Always use a tool with code execution, and always say so:
Use code to calculate this. Show the code and the output.
Do not estimate any number.
2. Verify one row by hand. Whatever it produces, check a single row yourself against the source. Most errors are systematic — if one row is right, the rest usually are; if one is wrong, all of them are.
Understanding a new dataset
Here is a dataset. Before any analysis:
1. What is one row? Describe the unit of observation.
2. What does each column mean, and what type is it?
3. How many rows, how many missing values per column?
4. Which columns have suspicious values — impossible dates, negative
quantities, duplicated IDs, outliers?
5. What questions can this data actually answer, and what can it not?
Use code. Do not analyse anything yet.
That final question is the one people skip. Half of bad analysis is a dataset being asked a question it cannot answer.
Cleaning
Clean this data:
- Standardise dates to YYYY-MM-DD
- Trim whitespace, normalise capitalisation in [COLUMNS]
- Flag duplicates on [KEY COLUMN] — do not delete them, show me
- Leave missing values as missing. Do not impute anything without asking.
Show the code. Then list every change you made, with a count.
If a value is ambiguous, list it rather than guessing.
Never let it silently fill gaps. An imputed number that reaches a slide is indistinguishable from a real one.
Analysis
The description
Using code, tell me:
- Distribution of [COLUMN]: min, max, median, mean, quartiles
- Is it skewed? Show me.
- Any outliers, and are they errors or real?
Then, in plain English: what should I notice?
The comparison
Compare [GROUP A] and [GROUP B] on [METRIC].
Show the numbers, the difference, and the sample size for each.
Then tell me honestly: is this difference large enough to act on given
these sample sizes, or could it plausibly be noise?
The trend
Show [METRIC] over [TIME PERIOD].
Is there a trend, or is it noise around a flat line?
Flag any seasonality. Flag any point where the data collection
might have changed — sudden level shifts are usually process changes,
not real changes.
The segment hunt
Break [METRIC] down by every categorical column, one at a time.
Show me only the breakdowns where the difference between groups is
large AND the group sizes are big enough to be meaningful.
Tell me how many comparisons you ran — I need to know how likely it is
that something looks interesting by chance.
That last line matters. Test twenty segments and one will look significant by luck.
Spreadsheet work
Explain a formula
Explain this formula step by step in plain English:
[PASTE]
Then: what input would make it give a wrong answer silently?
Write a formula
In [EXCEL / GOOGLE SHEETS]:
My data: [DESCRIBE COLUMNS AND WHERE THEY ARE]
I want: [WHAT YOU WANT CALCULATED]
Edge cases: [BLANKS? TEXT IN NUMBER COLUMNS? DIVIDE BY ZERO?]
Give me the formula, explain what each part does, and tell me what
happens on each edge case.
Debug a spreadsheet
This formula returns [WRONG RESULT] and I expected [EXPECTED]:
[PASTE FORMULA AND SAMPLE DATA]
Find the bug. Tell me what is wrong before giving me the fix.
Presenting
Here is my analysis: [PASTE RESULTS]
Audience: [WHO], who cares about [WHAT], and will decide [WHAT].
Write the summary. Rules:
- Lead with what it means for their decision, not the methodology
- Every number in context — a percentage needs its base
- State the uncertainty once, clearly, without burying it
- Name what this analysis cannot tell them
Before it leaves your hands
- Every number produced by executed code, not prediction
- One row verified by hand against the source
- Totals reconcile against a known figure
- Sample sizes stated wherever a comparison is made
- No imputed values presented as observed
- Percentages have their denominator visible
- Correlation is not described as cause
- Someone who knows the domain has sanity-checked it
The failure that matters most
The dangerous output is not the one that is obviously wrong. It is the one that is plausible, well-formatted, confidently explained, and off by a factor that nobody checks because the presentation is good.
The defence is boring and it works: reconcile one total, verify one row, state one uncertainty.