Coding Grandmaster · project 27 of 46 · premium, free for now
Quartiles and outliers
Write quartiles(data) returning (q1, q2, q3) by the method above, and outliers(data) returning the sorted list of outliers by the 1.5 × IQR rule.
Learn
Quartiles cut sorted data into four equal-sized parts: Q2 is the median, Q1 is the median of the lower half and Q3 the median of the upper half (leaving out the middle value when the count is odd). The interquartile range IQR = Q3 − Q1 measures the spread of the middle half. A common rule flags a value as an outlier if it lies more than 1.5 × IQR below Q1 or above Q3.
Your task
Write quartiles(data) returning (q1, q2, q3) by the method above, and outliers(data) returning the sorted list of outliers by the 1.5 × IQR rule.
Stretch challenge
Draw a box plot with the turtle: the box from Q1 to Q3, a line at the median, whiskers to the last non-outlier.
Press Run to see what your program prints.
More in this module
Keep going in Coding Grandmaster
Averages
Write mean(data), median(data) and mode(data). If several values tie for most common, mode returns the smallest of them. Print all three for the list.
Start →26How spread out?
Write data_range(data), variance(data) and std_dev(data) (population versions, dividing by n). Print them for the data, rounding the standard deviation to 4 decimal places.
Start →28A histogram in text
Count how many students got each grade and print one line per grade in alphabetical order, like A | #### 4.
Start →29Do two things move together?
Write correlation(xs, ys) that returns Pearson's r rounded to 4 decimal places. Print it for study hours against marks.
Start →30Scaling and z-scores
Write min_max(values) and z_scores(values) (use the population standard deviation). Both return lists with each number rounded to 2 decimal places.
Start →Practise the idea
📊 Play Data Detective
Use mean, median and mode to describe a set of data and compare what each tells you.
FAQ
Quartiles and outliers: common questions
I am stuck. What can I do?
Press Hint for a nudge, read the message next to each goal, and compare your code with the lesson text. If you still need it, Show answer reveals a model solution. Try to type it yourself rather than copy it.
Does my work get saved?
Your ticks and XP are saved in this browser, and in your account if you log in. The code you type is not stored on a server.
Start a conversation
Enjoying coding? Meet a teacher.
Tell us the learner's age, country and what they would like to build, and we will suggest a class. A parent or guardian can make the enquiry.
- Tell us the learner’s age or grade and goals
- We’ll suggest a suitable class or learning path
- We’ll confirm format, timing and fees with a parent or guardian
Play it, don't just read it
Write some code right now
Free games that need no sign-up. Pick one and play for five minutes.
Pick a game
- Bug HunterA Python program prints the wrong answer. Find the one line with the…Play
- Predict the OutputRead a short Python program and choose what it prints. Then watch it run…Play
- Code BuilderThe lines of a Python program are mixed up. Tap them into the right…Play
- Code JungleWrite real Python to guide Miko the monkey to every banana. 24 levels:…Play