📖 Scenario: You work as a data analyst for a small online store. You have a table of customer orders, but some information is missing. You want to find out which orders have missing data so you can fix or investigate them.
🎯 Goal: You will create a pandas DataFrame with order data, then use the isna() method to find missing values in the data.
📋 What You'll Learn
Create a pandas DataFrame with specific order data including some missing values
Create a variable to hold the result of detecting missing values using isna()
Print the DataFrame showing which values are missing
💡 Why This Matters
🌍 Real World
Detecting missing data is important in real-world data analysis to clean and prepare data for accurate results.
💼 Career
Data analysts and scientists often check for missing values to decide how to handle incomplete data before analysis.
Progress0 / 4 steps
1
Create the orders DataFrame
Import pandas as pd and create a DataFrame called orders with these exact columns and values: 'OrderID': [101, 102, 103, 104], 'Customer': ['Alice', 'Bob', None, 'David'], 'Amount': [250, None, 150, 300]
Pandas
Hint
Use pd.DataFrame with a dictionary of lists for columns.
2
Create a variable to detect missing values
Create a variable called missing_values that stores the result of calling orders.isna().
Pandas
Hint
Use the isna() method on the orders DataFrame.
3
Check missing values in the DataFrame
Use a print() statement to display the missing_values DataFrame.
Pandas
Hint
Use print(missing_values) to see the True/False table.
4
Display missing values clearly
Print the orders DataFrame and then print the missing_values DataFrame to compare the original data with missing value locations.
Pandas
Hint
Print both DataFrames one after the other to see missing values clearly.
Practice
(1/5)
1. What does the pandas.DataFrame.isna() function do?
easy
A. It converts all values to strings.
B. It fills missing values with zeros.
C. It removes rows with missing values.
D. It shows which values in the DataFrame are missing (NaN).
Solution
Step 1: Understand the purpose of isna()
The isna() function checks each cell in a DataFrame and marks True if the value is missing (NaN), otherwise False.
Step 2: Compare options with function behavior
Only It shows which values in the DataFrame are missing (NaN). correctly describes this behavior. Options B, C, and D describe other functions or actions.
Final Answer:
It shows which values in the DataFrame are missing (NaN). -> Option D
Quick Check:
isna() = marks missing values True [OK]
Hint: Remember: isna() marks missing spots True [OK]
Common Mistakes:
Confusing isna() with fillna()
Thinking isna() removes data
Assuming isna() changes data types
2. Which of the following is the correct syntax to check missing values in a DataFrame named df?
easy
A. isna(df)
B. df.isna
C. df.isna()
D. df.isna[]
Solution
Step 1: Recall method call syntax in pandas
Methods like isna() must be called with parentheses on the DataFrame object, so df.isna() is correct.
Step 2: Evaluate each option
df.isna() uses correct syntax. df.isna misses parentheses, so it returns the method object, not the result. isna(df) is incorrect because isna is a method, not a standalone function. df.isna[] uses invalid bracket syntax.
Final Answer:
df.isna() -> Option C
Quick Check:
Method call needs parentheses () [OK]
Hint: Use parentheses to call isna(): df.isna() [OK]
Common Mistakes:
Forgetting parentheses after isna
Trying to call isna as a standalone function
Using brackets instead of parentheses
3. Given the DataFrame:
import pandas as pd
data = {'A': [1, None, 3], 'B': [4, 5, None]}
df = pd.DataFrame(data)
print(df.isna())
What is the output?
medium
A. A B
0 False False
1 True False
2 False True
B. A B
0 True False
1 False True
2 False False
C. A B
0 False True
1 False False
2 True False
D. A B
0 False False
1 False True
2 True False
Solution
Step 1: Identify missing values in each column
Column 'A' has None at index 1, so True there. Column 'B' has None at index 2, so True there. All other values are present (False).
Step 2: Match the True/False pattern to output
A B
0 False False
1 True False
2 False True matches the pattern: index 1 in 'A' is True, index 2 in 'B' is True, others False.
Final Answer:
A B
0 False False
1 True False
2 False True -> Option A
Quick Check:
None values marked True by isna() [OK]
Hint: Look for None positions; isna() marks them True [OK]
Common Mistakes:
Mixing row and column positions
Confusing True and False values
Assuming isna() replaces values
4. You run this code:
import pandas as pd
data = {'X': [10, 20, None], 'Y': [None, 40, 50]}
df = pd.DataFrame(data)
missing = df.isna
Why does missing.sum() cause an error?
medium
A. Because missing is a DataFrame, not a function.
B. Because isna is not called with parentheses when assigned.
C. Because isna() does not exist in pandas.
D. Because df is not defined.
Solution
Step 1: Understand method assignment without parentheses
Assigning missing = df.isna stores the method itself, not the result. To get the result, you must call it with parentheses.
Step 2: Explain why missing.sum() causes error
Assigning missing = df.isna stores the method object, not the DataFrame result. Method objects do not have a .sum() attribute--only DataFrames do. Thus, missing.sum() raises AttributeError.
Final Answer:
Because isna is not called with parentheses when assigned. -> Option B
Quick Check:
Assign method with () to get result [OK]
Hint: Assign with parentheses to get result, not method [OK]
Common Mistakes:
Assigning method without parentheses and expecting result
Confusing method object with method call
Assuming isna() is not a pandas method
5. You have a DataFrame df with columns 'Age' and 'Salary'. You want to count how many missing values are in each column using isna(). Which code correctly does this?
hard
A. df.isna().sum()
B. df.isna.sum()
C. df.sum().isna()
D. df.isna().count()
Solution
Step 1: Use isna() to mark missing values
The isna() method returns True for missing values and False otherwise.
Step 2: Sum True values per column to count missing
Since True is treated as 1 and False as 0, summing over rows counts missing values per column. So df.isna().sum() gives the count per column.
Final Answer:
df.isna().sum() -> Option A
Quick Check:
Sum True from isna() to count missing [OK]
Hint: Sum isna() results to count missing per column [OK]
Common Mistakes:
Forgetting parentheses after isna
Using count() which counts all rows, not missing
Applying sum() before isna()
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.