Bird
Raised Fist0
Pandasdata~3 mins

Why info() for column types and nulls in Pandas? - Purpose & Use Cases

Choose your learning style10 modes available
The Big Idea

Discover how a single command can save you hours of tedious data checking!

The Scenario

Imagine you have a big spreadsheet with hundreds of columns and thousands of rows. You want to quickly understand what kind of data each column holds and if there are missing values, but you have to open each column one by one and scan through the data manually.

The Problem

This manual checking is slow and tiring. You might miss some missing values or misunderstand the data type, leading to mistakes later. It's like trying to find a needle in a haystack without a magnet.

The Solution

The info() function in pandas gives you a quick summary of your data. It shows the type of each column and how many non-missing values it has, all in one place. This saves time and helps you spot problems early.

Before vs After
✗ Before
print(df['age'].dtype)
print(df['age'].isnull().sum())
✓ After
df.info()
What It Enables

With info(), you can instantly see the health and structure of your data, making it easier to clean and analyze.

Real Life Example

A data analyst receives a messy sales dataset and uses info() to quickly find columns with missing prices or wrong data types before starting any calculations.

Key Takeaways

Manually checking data types and missing values is slow and error-prone.

info() provides a fast, clear summary of column types and null counts.

This helps you understand and clean your data efficiently.

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