← VCE Data Analytics U4O2

Data integrity characteristic: reasonableness

Data is reasonable when its value is sensible and believable in its context, so impossible values or odd outliers (like an age of 250) are flagged by reasonableness checks.

Understanding Data integrity characteristic: reasonableness in VCE Data Analytics U4O2

What it does: A price far above the average is a suspicious outlier, so the code flags it for a person to review. The code accepts only temperatures inside a believable range for the setting, which is what a reasonableness check does. An age of 250 is not sensible or believable for a person, so it fails reasonableness. Timeliness is about whether data is up to date. Reasonable data makes sense for its context. A trusted source helps with authenticity, but it does not guarantee that a value is believable. Outliers that look wrong should be investigated. Some outliers are real, but a $2 house is not believable, so it needs checking.

Common mistakes: No age can be both below 0 and above 120, so AND means nothing is ever flagged. A reasonableness check should use OR: IF age < 0 OR age > 120 THEN. The upper limit is wrong. A mark above 100 is impossible, so the check must use 100 as its limit. A mark of 500 would pass a limit of 1000. It should be mark>100.

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 1–25) and word search (Modules 1–43).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
A student record shows an age of 250 years. Which integrity characteristic does this breach?
TimelinessReasonableness
Matches
IF age >= 0 THEN accept (age = 250)
↓
The check only tests the lower limit, so an impossible age of 250 is accepted. It needs an upper limit such as age <= 120.
Applying
Meanings
Term
reasonableness
Meaning
Data is reasonable when its value is sensible and believable in its context, so impossible values or odd outliers (like an age of 250) are flagged by reasonableness checks.
Practice
=IF(AND(B2>=0,B2<=100),"Reasonable","Check")
Testing
Gaps
if age 120:
Check Answer
Spots
1age = 250
2IF age < 0 AND age > 120 THEN

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Spider' badge — Web Weaver, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. A student record shows an age of 250 years. Which integrity characteristic does this breach?
A. Timeliness
B. Reasonableness ✓
An age of 250 is not sensible or believable for a person, so it fails reasonableness. Timeliness is about whether data is up to date.
2. Which statement describes reasonable data?
A. Its value is sensible and believable in its context ✓
B. It was collected from a source that nobody can question
Reasonable data makes sense for its context. A trusted source helps with authenticity, but it does not guarantee that a value is believable.
3. A shop records a customer buying -5 pencils. What is the problem?
A. An impossible value that fails a reasonableness check ✓
B. A value that is simply out of date
A negative quantity is impossible in this context, so a reasonableness check should flag it. The problem is not about age of data.
4. A reasonableness check on a 'Year Level' field accepts only 7 to 12. What does it do with a value of 27?
A. Flags it as unreasonable ✓
B. Accepts it because it is a whole number
A reasonableness check tests whether a value makes sense in context, not just whether it has the right data type. 27 is not a valid year level.
5. A house price dataset has one home listed at $2 instead of $2,000,000. How should an analyst treat this outlier?
A. Leave it, because every outlier must be correct
B. Flag it and investigate, because it looks wrong ✓
Outliers that look wrong should be investigated. Some outliers are real, but a $2 house is not believable, so it needs checking.

Match the Pairs

IF age < 0 OR age > 120 THEN flag → A reasonableness check that flags impossible ages that fall outside a believable range
IF mark > 100 THEN reject → A check that rejects a test mark that is higher than the maximum possible score
An outlier that looks wrong should be flagged for review, not silently accepted → IF price > 10 * average_price THEN review
A reasonableness check tests a value against a sensible range for its context → IF temp >= -10 AND temp <= 50 THEN accept
IF age >= 0 THEN accept (age = 250) → The check only tests the lower limit, so an impossible age of 250 is accepted. It needs an upper limit such as age <= 120.
Weight of a student = 5000 kg, record accepted → No reasonableness check was applied, so an impossible value was accepted as correct. The value should have been flagged and corrected.

Key Term

reasonableness
Data is reasonable when its value is sensible and believable in its context, so impossible values or odd outliers (like an age of 250) are flagged by reasonableness checks.

Fill in the Blanks

1. if age > 120: print("Unreasonable age")
Hint: Type the comparison operator that tests whether the age is above a sensible maximum.
2. if age < 0: flag = True
Hint: Type the variable being checked for an impossible negative value.
3. SELECT * FROM students WHERE yearLevel NOT BETWEEN 7 AND 12;
Hint: Type the SQL keywords that find values falling outside an allowed range.
4. if age < 0 or age > 120: print("Check this value")
Hint: Type the logical operator that flags the value if either impossible condition is true.
5. if mark > 100: print("Impossible mark")
Hint: Type the comparison operator that flags a percentage mark that is higher than it can possibly be.

Spot the Error

Question 1
A age = 250
B IF age < 0 AND age > 120 THEN
C flag 'unreasonable age'
D END IF
Line B — No age can be both below 0 and above 120, so AND means nothing is ever flagged. A reasonableness check should use OR: IF age < 0 OR age > 120 THEN.
Question 2
A FOR each mark IN marks
B // marks must be 0 to 100
C IF mark<0 OR mark>1000 THEN
D flag mark
E END IF
F END FOR
Line C — The upper limit is wrong. A mark above 100 is impossible, so the check must use 100 as its limit. A mark of 500 would pass a limit of 1000. It should be mark>100.
Question 3
A def is_reasonable(age):
B if age < 0:
C return False
D return age >= 120
Line D — The comparison is the wrong way round. Reasonable ages are 120 or less, so the function should return age <= 120. As written, an age of 250 would be accepted as reasonable.
Question 4
A max_age = 1200
B age = 250
C if age > max_age:
D print('Check this age')
Line A — The maximum is set far too high to be believable. An age of 250 would not be flagged. The limit should be a sensible value such as 120.
Question 5
A price = -15
B if price >= 0:
C print('Impossible price')
D else:
E print('Price is OK')
Line B — The condition is reversed. It flags positive prices as impossible. The impossible values are zero or negative, so the check should be if price <= 0:.

Student with a class code? Join your class →