Why might it not update the DataFrame as expected?
medium
A. Because replace() cannot handle dictionaries
B. Because replace() needs inplace=true or assignment to update df
C. Because 'M' and 'F' are not valid keys
D. Because replace() only works on numeric columns
Solution
Step 1: Check replace() behavior
By default, replace() returns a new Series and does not change df unless inplace=true or assigned.
Step 2: Identify missing update step
The code does not assign back or use inplace=true, so df['gender'] remains unchanged.
Final Answer:
Because replace() needs inplace=true or assignment to update df -> Option B
Quick Check:
replace() without assignment = no change [OK]
Hint: Always assign or use inplace=true with replace() [OK]
Common Mistakes:
Assuming replace() changes df without assignment
Thinking replace() can't use dict
Believing replace() only works on numbers
5. You have a DataFrame with a 'status' column containing inconsistent values like 'Active', 'active', 'ACTIVE', and some misspelled as 'Actve'. Which sequence of pandas operations best cleans this column to have only 'Active' or 'Inactive' values?
hard
A. df['status'] = df['status'].str.strip().replace({'Actve': 'Inactive'})"
B. df['status'] = df['status'].replace({'Active': 'active', 'ACTIVE': 'active'}).str.upper()"
C. df['status'] = df['status'].fillna('Inactive').replace({'active': 'Active'})"
D. df['status'] = df['status'].str.lower().replace({'actve': 'active'}).str.capitalize()"
Solution
Step 1: Normalize case to lowercase
Using str.lower() converts all variations like 'Active', 'ACTIVE' to 'active'.
Step 2: Fix misspelled value
replace({'actve': 'active'}) corrects the misspelled 'actve' to 'active'.
Step 3: Capitalize for consistent formatting
str.capitalize() changes 'active' to 'Active' for uniform appearance.
Final Answer:
df['status'] = df['status'].str.lower().replace({'actve': 'active'}).str.capitalize() -> Option D
Quick Check:
Lowercase + replace typo + capitalize = clean status [OK]
Hint: Lowercase, fix typos, then capitalize for consistent values [OK]
Common Mistakes:
Not fixing misspelled values
Skipping case normalization
Replacing with wrong values
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.