Week 2 — Data Lab · "Picture the Penguins: Honest Graphs & One Lying Axis"
Course: Introduction to Statistics (18-week generic edition)
Objective: Objective 2 — frequency tables; bar charts, histograms & dot plots; distribution shape; misleading graphs · SLO A (reason quantitatively from data)
Worth 50 points · Data labs group = 15% of the grade · Data Lab 2 · Due: end of Week 2
Format: a hands-on data lab — the same real research data as Week 1, now turned into tables and pictures; then you build a deliberately misleading chart on purpose, fix it, and catch the AI's mistakes when it interprets your work.
This is the course's signature weekly component. Every instructional week has a Data Lab: real, free, linked public data — nothing to buy, download from a store, or sign up for — worked in your spreadsheet, finished with an AI-critique step. Plan on 60–90 minutes.
Part 1 — The Big Picture
Last week you met the 344 penguins of Palmer Station and learned who was measured and what was recorded. This week you learned that a pile of numbers is unreadable until it becomes a table and a picture — so today you'll give the penguins their pictures: a frequency table and bar chart of the species, a histogram of body mass with a real shape to describe, and a hand-drawn dot plot. Then the twist: you will commit graphical fraud on purpose — rebuilding one of your own charts with a truncated axis to watch an honest 1.2× difference masquerade as 8× — and then fix it. Nobody who has built the lie ever falls for it again.
The data: the palmerpenguins teaching dataset — 344 penguins from three species (Adélie, Chinstrap, Gentoo) measured at Palmer Station, Antarctica: bill and flipper dimensions, body mass, sex. Real field science, the same CSV you imported in Week 1.
Part 2 — The Task
The guiding question: What do the penguin data look like — which species dominates the dataset, what shape does body mass take — and how easily can an honest chart of the very same numbers be turned into a lie?
The dataset (both links are free, no login):
- About the data — palmerpenguins documentation
🔗 https://allisonhorst.github.io/palmerpenguins/
- The data itself (CSV file, opens as plain text)
🔗 https://raw.githubusercontent.com/allisonhorst/palmerpenguins/main/inst/extdata/penguins.csv
Part 3 — Materials & Procedure
You need: a web browser and a spreadsheet — Google Sheets (free) or Excel. Plus paper (or a drawing app) for one hand-drawn dot plot.
Warm-up (5 min, no dataset needed). A field assistant's notebook lists the species of the first 10 penguins spotted one morning:
The list below is the raw tally data for the warm-up.
Adélie · Gentoo · Adélie · Chinstrap · Adélie · Gentoo · Adélie · Adélie · Chinstrap · Gentoo
By hand, build a small frequency table: count each species, then compute each relative frequency (count ÷ 10) and check that the three shares sum to 1. Write it down — you'll compare your method (not your numbers) to the spreadsheet's in a moment.
Now the real data:
- Import the dataset exactly as in Data Lab 1: open the CSV link in your browser, select all (Ctrl/Cmd-A), copy, paste into cell A1 of a blank sheet, then Data ▸ Split text to columns if needed. (Excel: Data ▸ From Web with the CSV URL.) You should have 8 columns plus a header row.
- Count your rows. In an empty cell,
=COUNTA(A2:A400)— it should say 344. If not, re-import before continuing. - Build the species frequency table. In a scratch area, list the three species, then count each with a formula — note the CSV spells Adélie without the accent:
=COUNTIF(A2:A345,"Adelie"),=COUNTIF(A2:A345,"Chinstrap"),=COUNTIF(A2:A345,"Gentoo"). Add a relative-frequency column: each count divided by 344, shown to 3 decimals. Check that the counts sum to 344 and the shares sum to 1 (a rounded 0.999–1.001 is fine — say so in a note). - Draw the species bar chart. Select your three-row species/count table → Insert ▸ Chart → a Column chart. Notice the count axis starts at zero by default — remember that; you'll sabotage it in step 7.
- Draw the body-mass histogram. Select the
body_mass_gcolumn → Insert ▸ Chart → set Chart type to Histogram → Customize ▸ Histogram ▸ Bucket size = 500. (Blank/NA cells are skipped automatically — this column has a couple.) Look at the shape and answer: where do masses cluster, and which way does the thin tail stretch? Then try bucket size 250 and 1000, watch what changes, and put back whichever width tells the shape most honestly. - Hand-draw a dot plot. Below is the same 10-penguin body-mass table you averaged in Data Lab 1's warm-up. Draw a number line from 3,400 to 4,800 and stack one dot per penguin. (Two penguins share a value — stack those dots.)
The table below lists one body mass per penguin for the dot plot.
| Penguin | Body mass (g) |
|---|---|
| 1 | 3700 |
| 2 | 3900 |
| 3 | 4100 |
| 4 | 4300 |
| 5 | 3500 |
| 6 | 4700 |
| 7 | 3800 |
| 8 | 4200 |
| 9 | 3600 |
| 10 | 4200 |
- Build the lying chart (on purpose). Duplicate your species bar chart, then delete the Chinstrap row so it compares only Adélie vs. Gentoo. Now truncate the axis: Customize ▸ Vertical axis ▸ Min = 120 (Excel: right-click the axis ▸ Format Axis ▸ Minimum 120). Watch the two bars: compute how many times taller the Adélie bar is drawn (each bar's height above 120) versus the true ratio of the two counts. Record both in Table 2. Then set the minimum back to 0 and look at the honest version side by side.
Fallback (no import available): if you can't get the CSV into a spreadsheet, do everything with the two warm-up tables instead — the 10-species tally for the frequency table and bar chart (draw it by hand), and the 10-mass table for the dot plot; for step 7, truncate a hand-drawn axis at 3,400 and describe the effect on the tallest vs. shortest dot positions. State in your submission that you used the fallback.
Part 4 — The Scaffold (complete both tables)
Table 1 is the species frequency table from your spreadsheet formulas.
| Species | Frequency (=COUNTIF) |
Relative frequency (3 decimals) |
|---|---|---|
| Adélie | ______ | ______ |
| Chinstrap | ______ | ______ |
| Gentoo | ______ | ______ |
| Total | ______ | ______ |
Table 2 captures your histogram, dot plot, and lying-axis results.
| Quantity | Value |
|---|---|
Rows of data (from =COUNTA) |
______ |
| Bucket size you kept for the body-mass histogram | ______ |
| One shape word for body mass (argue it in Q2) | ______ |
| On your dot plot: the value where two dots stack | ______ |
| Lying chart — Adélie bar height ÷ Gentoo bar height, axis starting at 120 | ______ |
| Honest ratio — Adélie count ÷ Gentoo count | ______ |
Part 5 — Analysis Questions
Answer in 1–3 sentences each:
- Which species dominates this dataset, and with what share? Careful with the claim's reach (Week 1 callback): is "44% of this dataset is Adélie" the same statement as "44% of the penguins around Palmer Station are Adélie"? Why or why not?
- Describe the body-mass histogram with the week's checklist — shape, roughly where the values center, roughly how far they run, any surprises — and argue the shape from the tail (or from the peaks, if you see more than one).
- Your dot plot shows all 10 individual masses; your histogram shows none of the 342. What does the dot plot preserve that the histogram gives up — and why would a dot plot of all 342 masses be hopeless anyway?
- Report your two Table-2 ratios: how many times taller the truncated chart draws the Adélie bar versus the honest count ratio. In one sentence, why does the trick work on the eye? And name one situation where zooming an axis would be honest (hint: this is Discussion 2's question).
- Error sources: between bucket sizes 250, 500, and 1000, what changed in your histogram's apparent shape? Which did you keep, and why is "the shape survives reasonable bucket choices" the honest test — what would it mean if a pattern appeared at only one cherry-picked width?
Part 6 — AI-Critique Moment (required — the BYOAI step)
Now bring in your chatbot and be the analyst who checks its work.
- Paste your completed Table 1 and Table 2 into your chatbot and ask: "Check my relative-frequency arithmetic. Then: my body-mass histogram has this shape [paste your shape word and one-line description] — do you agree with my shape call? And is my chart with the axis starting at 120 an acceptable way to compare the two species?"
- Check everything it says against your own work:
- Did it recompute your shares correctly? (Redo one division yourself: does its "correction" of a right answer survive your check?)
- Did it read the skew direction correctly, or flip it? (Chatbots regularly name the peak side instead of the tail side — apply the tail tells the tale.)
- Did it call your histogram a "bar chart"? (Wrong family: categories vs. a number line.)
- Did it wave the axis-at-120 chart through as "fine for emphasis"? (It shouldn't — bar length encodes value, so bar axes start at zero.)
- Did it invent dataset facts — species counts or ranges it never computed? (Only your spreadsheet counted the actual rows.) - Write 2–3 sentences reporting what the AI got right and at least one thing you had to correct, question, or verify. If it happened to get everything right, say how you verified each claim — that's the skill.
The habit all term: the tool drafts, you judge. A chatbot will confidently flip a skew direction or bless a lying axis — catching it is the point.
Part 7 — What to Submit
One document or text entry containing: your warm-up frequency table, your completed Table 1 and Table 2, your charts (paste/screenshot the bar chart, the kept histogram, and the lying-vs-fixed pair — or describe them if you can't paste images), a photo or sketch of your dot plot, your Part 5 answers (1–5), and your Part 6 AI-critique paragraph. Due at the end of Week 2 · 50 points (rubric below the key).
Instructor answer key & model values — REMOVE BEFORE PUBLISHING TO STUDENTS
The species counts are deterministic (every correct import gives the same numbers), so Table 1 is graded on exact values; the histogram and shape call are graded on method and reasoning. Everything asserted below is pre-computed or verified against the linked source.
Warm-up (fixed — every student should match): Adélie 5, Chinstrap 2, Gentoo 3 (sum 10 ✓); relative frequencies 5 ÷ 10 = 0.50, 2 ÷ 10 = 0.20, 3 ÷ 10 = 0.30; shares sum to 1.00 ✓.
Dataset facts (verified against the linked CSV): 8 columns with headers exactly species, island, bill_length_mm, bill_depth_mm, flipper_length_mm, body_mass_g, sex, year; 344 data rows; species counts Adélie 152, Chinstrap 68, Gentoo 124 (152 + 68 + 124 = 344 ✓); body_mass_g has 2 NA rows (342 numeric values), smallest value 2700, largest 6300; sex has 11 NA rows (as in Week 1's lab).
Table 1 expected values:
The table below gives the exact expected species table.
| Species | Frequency | Relative frequency |
|---|---|---|
| Adélie | 152 | 152 ÷ 344 = 0.442 |
| Chinstrap | 68 | 68 ÷ 344 = 0.198 |
| Gentoo | 124 | 124 ÷ 344 = 0.360 |
| Total | 344 | 1.000 |
(Rounded shares sum to exactly 1.000 here; accept 0.999–1.001 with a rounding note if a student rounds differently.)
Table 2 expected values: rows = 344 (fixed). Bucket size kept: student's choice — most keep 500; grade that a size is stated and defended in Q5. Shape word: skewed right is the expected call (bulk of masses below ~5,000 g with the thin tail stretching toward 6,300); accept bimodal-ish if argued from two visible humps (the Gentoo group sits high) — what's graded is tail/peak reasoning, not the label alone. Dot-plot stack: two dots at 4200. Lying-chart drawn ratio: (152 − 120) ÷ (124 − 120) = 32 ÷ 4 = 8.0 (accept "about 8×"). Honest ratio: 152 ÷ 124 ≈ 1.23 (accept 1.2–1.25).
Part 5 expected answers:
1. Adélie, with 152/344 ≈ 44% (0.442). Not the same claim: 44% describes this dataset (the measured sample); extending it to all penguins around Palmer Station is a sample-to-population leap that depends on how penguins were selected — the Week 1 lesson.
2. Model description: single main cluster roughly 3,000–5,000 g, values running 2,700–6,300, thin tail toward the heavy side → skewed right; a student who sees two humps and says "roughly bimodal — a heavier subgroup" (the Gentoo) also earns full credit if argued from the picture. No credit for naming the peak side as the skew.
3. The dot plot preserves every individual value (you can still read each penguin's mass); the histogram trades individuals for classes. With 342 values, a dot plot becomes an unreadable smear of stacked dots — grouping is the only way to see shape at that scale.
4. Drawn ratio 8.0 vs. honest ≈1.23: the eye reads bar length, and the truncated axis draws only the bar tips, so a 28-penguin gap looks like an 8-fold rout. Honest zoom example: a line chart tracking small real changes (with the axis loudly labeled) — full credit for any answer showing the bars-vs-lines distinction or the "label it loudly" rule.
5. Expected observations: at 250 the shape splinters (many ragged bars); at 1000 it mashes toward a blob (detail like the second hump vanishes); 500 keeps the story visible. The honest test is robustness: a real shape survives reasonable widths, so a "pattern" that exists at only one width was manufactured by the buckets, not the data.
AI-critique full credit: names a specific claim checked or corrected — most commonly the chatbot flipping the skew direction, calling the histogram a "bar chart," "correcting" a correct share, blessing the axis-at-120 chart, or asserting species counts it never computed — OR documents how each claim was verified. Zero credit for "the AI agreed with everything" with no evidence of checking.
Grading rubric — 50 points
The rubric below maps each part to its points; bands are full / partial / none.
| Criterion | Full | Partial | None |
|---|---|---|---|
| Warm-up + import — hand tally 5/2/3 with shares 0.50/0.20/0.30 summing to 1; 344 rows confirmed (5) | 5 | 3 | 0–1 |
Species frequency table — =COUNTIF counts 152/68/124; relative frequencies to 3 decimals; both sum checks noted (10) |
10 | 5–8 | 0–4 |
| The pictures — bar chart from the table; histogram with a stated, defended bucket size; hand dot plot with the stack at 4,200 (15) | 15 | 8–12 | 0–6 |
| Analysis questions — Q1–Q5 hit the expected ideas, especially tail-based shape reasoning (Q2) and the two ratios (Q4) (15) | 15 | 8–12 | 0–6 |
| AI-critique — specific catch or verification reported in 2–3 sentences (5) | 5 | 3 | 0–2 |
Quality gate (self-checked): warm-up arithmetic re-verified (5 + 2 + 3 = 10; shares sum 1.00); dataset links live and free (documentation page + raw CSV both load without login); species counts, row count, body-mass NA count, and min/max verified against the fetched CSV (152 + 68 + 124 = 344; 32 ÷ 4 = 8.0; 152 ÷ 124 ≈ 1.23); no numeric claim in the key depends on an unverified dataset-wide value (per-bucket histogram counts deliberately not asserted — method-graded); no graded-item leakage (no quiz/exam item uses the penguins data); rubric sums 5 + 10 + 15 + 15 + 5 = 50. ✓