Bird
Raised Fist0
Pandasdata~10 mins

info() for column types and nulls in Pandas - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - info() for column types and nulls
Create DataFrame
↓
Call df.info()
↓
Scan each column
↓
Count non-null values
↓
Identify data types
↓
Print summary table
↓
Show memory usage
The flow shows how calling info() scans each DataFrame column to count non-null values, identify data types, and then prints a summary with memory usage.
Execution Sample
Pandas
import pandas as pd

data = {'A': [1, 2, None], 'B': ['x', None, 'z']}
df = pd.DataFrame(data)
df.info()
This code creates a DataFrame with some nulls and calls info() to show column types and null counts.
Execution Table
StepActionColumnNon-null CountData TypeMemory Usage
1Create DataFrame----
2Call df.info()----
3Scan columnA2float64-
4Scan columnB2object-
5Print summary-A: 2 non-null B: 2 non-nullA: float64 B: objectApprox. 224 bytes
6Show memory usage---224 bytes
💡 All columns scanned and summary printed
Variable Tracker
VariableStartAfter df.info()
df{'A':[1,2,None],'B':['x',None,'z']}DataFrame with 2 columns, 3 rows, null counts shown
Key Moments - 2 Insights
Why does info() show fewer non-null counts than total rows?
Because info() counts only non-null (not missing) values per column, as seen in execution_table rows 3 and 4 where columns have 2 non-null out of 3 rows.
Why are some columns shown as 'object' type?
Columns with mixed or string data are shown as 'object' type, like column B in execution_table row 4.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution table, what is the non-null count for column 'A' at step 3?
A3
B1
C2
D0
💡 Hint
Check the 'Non-null Count' column in execution_table row 3.
At which step does info() print the summary table?
AStep 5
BStep 4
CStep 2
DStep 6
💡 Hint
Look for 'Print summary' action in execution_table.
If column 'B' had no nulls, how would the non-null count change at step 4?
AIt would be 0
BIt would be 3
CIt would be 2
DIt would be 1
💡 Hint
Non-null count equals number of non-missing values; see variable_tracker for row count.
Concept Snapshot
df.info() shows a summary of DataFrame columns:
- Non-null counts per column
- Data types (e.g., float64, object)
- Memory usage
It helps quickly see missing data and column types.
Full Transcript
We start by creating a DataFrame with some missing values. When we call df.info(), pandas scans each column to count how many values are not missing. It also identifies the data type of each column, like float64 for numbers or object for text. Then it prints a summary table showing these counts and types, plus the memory used. This helps us understand the data structure and find missing values quickly.

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

  1. 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.
  2. 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().
  3. Final Answer:

    The number of non-null values and data types of each column -> Option A
  4. 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

  1. Step 1: Recall method call syntax in pandas

    Methods are called with parentheses after the method name, so df.info() is correct.
  2. 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.
  3. Final Answer:

    df.info() -> Option A
  4. 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

  1. 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.
  2. Step 2: Determine data type of Age column

    Because of the None, pandas converts the Age column to float64 to accommodate NaN values.
  3. Final Answer:

    Age column has 2 non-null values and dtype float64 -> Option C
  4. 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

  1. Step 1: Understand the error meaning

    The error says df has no attribute info, meaning df is not a DataFrame.
  2. Step 2: Identify common cause

    This usually happens if df was reassigned to something else, like a list or string, losing DataFrame methods.
  3. Final Answer:

    You overwrote the variable name df with a non-DataFrame object -> Option D
  4. 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

  1. Step 1: Identify what each method shows

    df.info() shows non-null counts and data types, helping spot missing data and column types.
  2. 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.
  3. Final Answer:

    df.info() -> Option B
  4. 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 unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard