Worked example · IT · Year 11

Cleansing and analysing a client data set

DCF: Data and computational thinking → Data and information literacy

What this is

A complete, secure Year 11 answer, annotated so you can see which success criterion each part meets. It is also the answer key. There are 13 problems in the raw data; the four blank ratings are not problems. Key results on the cleaned data: Comedy 10, Horror 7, Drama 4, Sci-fi 4, Animation 3, No answer 1; 20 people aged 11 to 18, of whom 13 (65%) heard via TikTok; mean maximum price £5.28 overall, £4.60 for 11 to 18, £7.00 for 19 and over; mean rating 4.08 from 24 ratings; mean age 26.2 raw and 21.75 cleaned. Every figure has been recomputed from the data. Practice only: this is not NEA work.

Step 2: the cleansing log

Row Column Value now Technique Change it to, and why
4C townMtn AshUse standard formatMountain Ash, so filters and counts group it with the other Mountain Ash rows.
6E genrehorrorUse standard formatHorror. COUNTIF ignores capitals, but a consistent format keeps filters, sorting and charts tidy.
10E genreComedeyCorrect errorComedy. Misspelt, so COUNTIF(…,"Comedy") would miss it.
12F time6pmUse standard format18:00, the 24-hour format in the rules.
13B age142Remove outlierImpossible: breaks the 11 to 99 rule. It could be 14 or 42, so do not guess. Delete the value, keep the rest of R12’s answers, and leave R12 out of any age analysis.
17G price£7Use standard format7, stored as a number. As text, AVERAGE ignores it without warning.
18I rating7Remove outlierBreaks the 1 to 5 rule and the true rating cannot be known. Delete the value and add a note, because R17 has visited, so the blank does not mean “not visited”.
21E genre(blank)Insert missing valueNo answer. The person did answer the rest; do not invent a genre, but make the gap visible so the genre counts still add up to 29.
23whole rowR07 againRemove duplicateDelete the row. It is identical to row 8. The brief says 29 people; there are 30 rows.
25E genreSci fiUse standard formatSci-fi, the spelling in the rules.
26C townAberdârUse standard formatAberdare. Same town (Aberdâr is the Welsh name), but the rules use the English names so the data filters together.
27G pricefourCorrect error4, as a number. As text, AVERAGE ignores it.
28F time8pmUse standard format20:00.

(b) No. R04, R10, R14 and R22 all made 0 visits in the last 3 months, and the rules say the rating is left blank on purpose for them. Inserting a rating would invent an opinion about a cinema they have not been to. AVERAGE ignores blank cells, so the mean rating is still correct.

Every problem is tied to a rule in the brief and a named technique. Where the true value cannot be known (rows 13 and 18) the value is removed, not guessed, and the rest of the row is kept. It also recognises when a blank is correct. Evidences criterion 1.

Step 3: validation rules

ColumnValidation settingError alert message
B ageAllow: Whole number, between 11 and 99Age must be a whole number from 11 to 99.
E favourite_genreAllow: List, source Animation, Comedy, Drama, Horror, Sci-fi (gives a drop-down list)Choose a genre from the list. If they did not answer, leave it blank.
G max_ticket_price_gbpAllow: Whole number, between 0 and 15Type the price in whole pounds from 0 to 15, with no £ sign.
I rating_1_to_5Allow: Whole number, between 1 and 5, with “Ignore blank” tickedRating must be 1 to 5. Leave it blank if they have not visited.

Each rule matches a known standard in the brief, and the alert tells the volunteer how to fix the entry, not just that it is wrong. A drop-down list would also have prevented the Comedey, horror and Sci fi errors. Evidences criterion 2.

Step 4: analyse the clean data

QuestionFormulaResult
(a) Genre counts=COUNTIF(E2:E30,"Comedy"), and the same for each genre and for “No answer”Comedy 10, Horror 7, Drama 4, Sci-fi 4, Animation 3, No answer 1. Total 29.
(b) 11 to 18 year olds, and how many heard via TikTok=COUNTIF(B2:B30,"<=18")
=COUNTIFS(B2:B30,"<=18",H2:H30,"TikTok")
20 people. 13 heard via TikTok: 13 ÷ 20 × 100 = 65%.
(c) Mean maximum ticket price=AVERAGE(G2:G30)
=AVERAGEIF(B2:B30,"<=18",G2:G30)
=AVERAGEIF(B2:B30,">=19",G2:G30)
Everyone: 153 ÷ 29 = £5.28. 11 to 18: 92 ÷ 20 = £4.60. 19 and over: 56 ÷ 8 = £7.00.
(d) Mean rating=AVERAGE(I2:I30) and =COUNT(I2:I30)98 ÷ 24 = 4.08, from 24 valid ratings.
(e) Start time, 11 to 18=COUNTIFS(B2:B30,"<=18",F2:F30,"18:00"), and the same for 19:00 and 20:0018:00: 8. 20:00: 7. 19:00: 5.

(f) Raw data: 786 ÷ 30 = 26.2, which is where Dafydd’s 26 comes from. Cleaned data: 609 ÷ 28 = 21.75. The raw mean is too high for two reasons: the impossible age of 142 is more than twice the age of the oldest real respondent, 65, and the duplicate counts a 35 year old twice. Even the cleaned mean is pulled up by a few older people: the median age is 16, and 20 of the 28 people with a known age are 18 or under. So the typical person in this survey is a teenager, not a 26 year old.

Each result has the formula that would produce it in the spreadsheet, uses functions from all levels (COUNTIF, AVERAGEIF, COUNTIFS), and shows the division so it can be checked. Part (f) proves why cleansing matters by comparing raw and clean results, and checks that the answer makes sense. Evidences criterion 3.

Step 5: the chart

How 11 to 18 year olds heard about the cinema (20 people) 0 5 10 15 13TikTok 3Friend 2Instagram 2Poster 0Facebook How they heard about the cinema Number of people

A bar chart suits this data because the categories are separate, with no order, and the reader needs to compare counts. The bars make it obvious that TikTok is more than 4 times bigger than any other channel. A pie chart would make 2 and 3 hard to tell apart and cannot show the 0 for Facebook.

Title, labelled axes and values, and the chart shows only the group the question asks about. The choice is justified by the type of data. Evidences criterion 4.

Step 6: from findings to success criteria

 Finding, with a figureSuccess criterion for the website
113 of the 20 people aged 11 to 18 (65%) heard about the cinema via TikTok. None heard via Facebook.Every page has a link to the cinema’s TikTok account in the header, and the home page shows the latest TikTok trailer.
2Comedy (8) and Horror (6) are the favourites of 14 of the 20 young people (70%).The What’s On page can be filtered by genre in one click, and lists at least one comedy or horror screening each month.
311 to 18 year olds would pay £4.60 on average, against £7.00 for people aged 19 and over.The home page shows a ticket price for 11 to 18 year olds of no more than £4.60, visible without scrolling.

Not clearly supported: the best start time. Among 11 to 18 year olds, 18:00 has 8 votes, 20:00 has 7 and 19:00 has 5. A difference of one person out of 20 is too small to plan around. The committee should ask again in a larger survey before moving any screening times.

Each finding carries a figure, and each success criterion can be checked as met or not met by a tester. The last answer shows the limits of a small sample and changes the conclusion to match. Evidences criterion 5.

If you finish early: answers

Why this response is secure