Data Cleaning Exercises

Module 1

Inspect before changing

Read the brief and data dictionary, profile the schema, state assumptions and list open questions.
  1. Profile before you change anything

    Count missing, empty, padded and distinct values in each column, and write down the questions the counts raise before choosing a rule. · 8 min

  2. Turn a profile into questions

    Write the open questions a profile raises, with counts and examples, before choosing rules. · 7 min

  3. Check the data against its dictionary

    Compare every column with its documented meaning, type and allowed values, and list the conflicts. · 7 min

  4. Define scope and grain first

    State which records are in scope and what one row represents before cleaning. · 6 min

Module 1 quiz

Practice questions: choose an answer and check it to see the explanation. Nothing here is timed or graded.

  1. 1. Why profile every row instead of the first 100?
  2. 2. The data dictionary says customer_code is required, but 3% of rows have it blank. What do you do first?
  3. 3. An analyst profiles order_id and reports "unique: yes" after checking the first 1,000 rows of a 2-million-row file. What is wrong?
  4. 4. A column has 1,000 rows: 940 values, 40 empty strings and 20 missing. What share of rows has no usable value?
  5. 5. The brief asks for "active customers" but doesn't define active. What do you do?
  6. 6. What is the main purpose of listing assumptions before cleaning?
  7. 7. A profile shows a status column with 12 distinct values where the dictionary lists 3. What should you conclude?