Using info() to Check Column Types and Nulls in pandas
📖 Scenario: You work as a data analyst. You receive a small dataset about employees in a company. You want to quickly understand the data types of each column and check if there are any missing values.
🎯 Goal: Learn how to use the info() method in pandas to see column data types and count of non-null values.
📋 What You'll Learn
Create a pandas DataFrame with given employee data
Assign the DataFrame to a variable named df
Use the info() method on df to display column types and null counts
Print the output of df.info()
💡 Why This Matters
🌍 Real World
Data scientists and analysts often need to quickly understand the structure of new datasets, including data types and missing values, before starting analysis.
💼 Career
Knowing how to use pandas info() helps in data cleaning and preparation, which is a key skill for data science and analytics jobs.
Progress0 / 4 steps
1
Create the employee DataFrame
Create a pandas DataFrame called df with these exact columns and values: 'Name': ['Alice', 'Bob', 'Charlie', 'David'], 'Age': [25, 30, 35, None], 'Department': ['HR', 'IT', 'Finance', 'IT']
Pandas
Hint
Use pd.DataFrame with a dictionary where keys are column names and values are lists of column values.
2
Prepare to check data info
Assign the DataFrame df to a variable called data to prepare for analysis.
Pandas
Hint
Just assign df to data with data = df.
3
Use info() to check column types and nulls
Call the info() method on the variable data to see the data types and count of non-null values for each column.
Pandas
Hint
Use data.info() to display the summary of the DataFrame.
4
Print the info() output
Print the output of data.info() by calling print() with data.info() inside it.
Pandas
Hint
Use print(data.info()) to show the info output in the console.
Practice
(1/5)
1. What does the info() method in pandas primarily show about a DataFrame?
easy
A. The number of non-null values and data types of each column
B. The first five rows of the DataFrame
C. The summary statistics like mean and median
D. The unique values in each column
Solution
Step 1: Understand what info() displays
The info() method shows the count of non-null entries and the data type for each column in a DataFrame.
Step 2: Compare with other options
The first five rows are shown by head(), summary statistics like mean and median by describe(), and unique values by methods like unique(), not info().
Final Answer:
The number of non-null values and data types of each column -> Option A
Quick Check:
info() = non-null counts + dtypes [OK]
Hint: Remember: info() shows counts and types, not data samples [OK]
Common Mistakes:
Confusing info() with head() or describe()
Thinking info() shows unique values
Assuming info() shows data content
2. Which of the following is the correct way to call the info() method on a pandas DataFrame named df?
easy
A. df.info()
B. info(df)
C. df.info
D. df.info[]
Solution
Step 1: Recall method call syntax in pandas
Methods are called with parentheses after the method name, so df.info() is correct.
Step 2: Check other options for syntax errors
info(df) treats info as a function, which it is not. df.info misses parentheses, so it returns the method object, not the output. df.info[] uses invalid syntax with brackets.
Final Answer:
df.info() -> Option A
Quick Check:
Method call needs parentheses: df.info() [OK]
Hint: Call methods with parentheses: df.info() not df.info [OK]
Common Mistakes:
Forgetting parentheses when calling methods
Using function syntax instead of method syntax
Using brackets [] instead of parentheses ()
3. Given the DataFrame df below, what will df.info() show for the column Age?
import pandas as pd
data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, None, 30]}
df = pd.DataFrame(data)
df.info()
medium
A. Age column has 3 non-null values and dtype float64
B. Age column has 2 non-null values and dtype int64
C. Age column has 2 non-null values and dtype float64
D. Age column has 3 non-null values and dtype int64
Solution
Step 1: Count non-null values in Age column
The Age column has values 25, None, and 30. None counts as null, so non-null count is 2.
Step 2: Determine data type of Age column
Because of the None, pandas converts the Age column to float64 to accommodate NaN values.
Final Answer:
Age column has 2 non-null values and dtype float64 -> Option C
Quick Check:
Nulls reduce count; None makes dtype float64 [OK]
Hint: Nulls reduce non-null count; mixed types become float [OK]
Common Mistakes:
Counting None as non-null
Assuming dtype stays int64 despite nulls
Ignoring dtype conversion due to nulls
4. You run df.info() but get an error: AttributeError: 'DataFrame' object has no attribute 'info'. What is the most likely cause?
medium
A. The DataFrame is empty
B. You forgot to import pandas as pd
C. You called info without parentheses
D. You overwrote the variable name df with a non-DataFrame object
Solution
Step 1: Understand the error meaning
The error says df has no attribute info, meaning df is not a DataFrame.
Step 2: Identify common cause
This usually happens if df was reassigned to something else, like a list or string, losing DataFrame methods.
Final Answer:
You overwrote the variable name df with a non-DataFrame object -> Option D
Quick Check:
AttributeError means wrong object type [OK]
Hint: Check if df is still a DataFrame before calling info() [OK]
Common Mistakes:
Assuming empty DataFrame causes this error
Thinking missing parentheses cause AttributeError
Ignoring variable reassignment issues
5. You have a DataFrame df with columns ['A', 'B', 'C']. Column B has many null values. You want to quickly check which columns have missing data and their types. Which code snippet best helps you decide what cleaning is needed?
hard
A. df.isnull().sum()
B. df.info()
C. df.describe()
D. df.head()
Solution
Step 1: Identify what each method shows
df.info() shows non-null counts and data types, helping spot missing data and column types.
Step 2: Compare with other options
df.describe() summarizes numeric stats but not null counts. df.isnull().sum() shows null counts but not types. df.head() shows sample rows but not summary info.
Final Answer:
df.info() -> Option B
Quick Check:
info() = null counts + types [OK]
Hint: Use info() to see null counts and types in one step [OK]
Common Mistakes:
Using describe() expecting null info
Using isnull().sum() but ignoring types
Using head() which shows no summary
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.