Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Handling Missing Data in Python

EasyPython00:00
Practice interviewer
In session
5 left
00:00

Your question is Handling Missing Data in Python. Start with the requirements on the right.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.

Problem

Synthego's CRISPR Design Tool produces records containing guide information and optional metadata. Implement a function that fills missing values using a supplied defaults map.

A value is considered missing when its field is absent from the record, set to None, or equal to the empty string "". Replace only missing values. Preserve existing values, including 0, False, and non-empty strings. The function must not mutate the input records.

Formal Specification

Given records, a list of dictionaries, and defaults, a dictionary mapping field names to replacement values, return a new list of dictionaries. Each output record must contain every field in defaults. Fields not listed in defaults must remain unchanged. Preserve the original record order.

Constraints

  • 0 <= len(records) <= 10^4
  • Each record is a dictionary with string keys
  • 0 <= len(defaults) <= 100
  • A missing value is an absent field, None, or an empty string
  • The input records must not be mutated

Function Signature

def fill_missing(records, defaults):
Your solutionPython 3
You need to log in / sign up to run or submit.
Run your code to see test output