📖 Scenario: You work in a small shop and keep track of your sales data in a table. You want to understand what kind of information each column holds, like numbers or words, to help you analyze it better.
🎯 Goal: Learn how to use the info() method in pandas to see the types of columns in a sales data table.
📋 What You'll Learn
Create a pandas DataFrame with specific sales data
Use a variable to hold the DataFrame
Call the info() method on the DataFrame to display column types
Print the return value of info() to the screen
💡 Why This Matters
🌍 Real World
Checking column types helps you know if your data is ready for calculations or needs cleaning, like fixing text or missing numbers.
💼 Career
Data scientists and analysts often use <code>info()</code> to quickly understand the structure of new datasets before working on them.
Progress0 / 4 steps
1
Create the sales data DataFrame
Import pandas as pd and create a DataFrame called sales_data with these exact columns and values: 'Product' with ['Apple', 'Banana', 'Carrot'], 'Quantity' with [10, 5, 7], and 'Price' with [0.5, 0.3, 0.2].
Data Analysis Python
Hint
Use pd.DataFrame with a dictionary where keys are column names and values are lists of column data.
2
Prepare to check column types
Create a variable called info_output and assign it the result of calling sales_data.info(buf=None). This prints the DataFrame information including column types to the screen and returns None.
Data Analysis Python
Hint
sales_data.info(buf=None) prints the DataFrame info to the screen and returns None, which is assigned to info_output.
3
Print the info output
Use print() to display the variable info_output to see what info() returns.
Data Analysis Python
Hint
Just use print(info_output) to show the return value.
4
View the column types output
Run the program and observe the printed output showing the DataFrame info including the column names, non-null counts, and data types, followed by None.
Data Analysis Python
Hint
The output shows the DataFrame info including column types like object for text and int64 or float64 for numbers.
Practice
(1/5)
1. What does the DataFrame.info() method primarily show about a dataset?
easy
A. The data types of each column and non-null counts
B. The first 5 rows of the dataset
C. The summary statistics like mean and median
D. The unique values in each column
Solution
Step 1: Understand the purpose of info()
The info() method is used to display concise summary of a DataFrame including data types and non-null counts.
Step 2: Compare with other methods
Methods like head() show rows, describe() shows statistics, and unique() shows unique values, so they are not correct here.
Final Answer:
The data types of each column and non-null counts -> Option A
Quick Check:
info() = data types + counts [OK]
Hint: Remember: info() shows types and counts, not data preview [OK]
Common Mistakes:
Confusing info() with head()
Thinking info() shows statistics
Assuming info() lists unique values
2. Which of the following is the correct way to call the info() method on a DataFrame named df?
easy
A. info(df)
B. df.info[]
C. df.info
D. df.info()
Solution
Step 1: Recall method call syntax in Python
Methods are called with parentheses after the method name, so df.info() is correct.
Step 2: Check other options
info(df) is incorrect because info is not a standalone function; df.info misses parentheses and returns the method object; df.info[] is invalid syntax.
Final Answer:
df.info() -> Option D
Quick Check:
Method call needs parentheses [OK]
Hint: Call methods with () after the name [OK]
Common Mistakes:
Forgetting parentheses when calling methods
Using info() as a standalone function
Using brackets [] instead of parentheses ()
3. Given the following DataFrame df and its info() output, what is the data type of the column Age?
The info output shows Age has 3 non-null values and data type int64.
Step 2: Match the data type to options
Among the options, int64 matches the data type shown for Age.
Final Answer:
int64 -> Option C
Quick Check:
Age column type = int64 [OK]
Hint: Look for column name and dtype in info() output [OK]
Common Mistakes:
Confusing object with string
Mixing float64 and int64 types
Ignoring the dtype column in info()
4. You run df.info() but get an error: AttributeError: 'list' object has no attribute 'info'. What is the most likely cause?
medium
A. You forgot to import pandas
B. You called info() on a list, not a DataFrame
C. You used info() without parentheses
D. The DataFrame is empty
Solution
Step 1: Analyze the error message
The error says a 'list' object has no attribute 'info', meaning the variable is a list, not a DataFrame.
Step 2: Identify the cause
Only DataFrames have the info() method. Calling it on a list causes this error.
Final Answer:
You called info() on a list, not a DataFrame -> Option B
Quick Check:
info() needs DataFrame, not list [OK]
Hint: Check variable type before calling info() [OK]
Common Mistakes:
Assuming info() works on lists
Ignoring error message details
Thinking empty DataFrame causes this error
5. You have a DataFrame df with 200 columns. Column 'B' has some missing values. You want to quickly check which columns have missing data and their data types. Which code snippet using info() helps you do this?
hard
A. df.info(verbose=True)
B. df.info(null_counts=True)
C. df.info(show_missing=True)
D. df.info()
Solution
Step 1: Recall info() behavior on wide DataFrames
With 200 columns (> pandas default max_info_columns=100), df.info() truncates the column list, hiding non-null counts and dtypes for most columns including potentially 'B'.
Step 2: Check options
df.info(verbose=True) forces full display of all columns' non-null counts and dtypes. Other parameters like null_counts and show_missing are invalid.
Final Answer:
df.info(verbose=True) -> Option A
Quick Check:
verbose=True for full column info on large DFs [OK]
Hint: df.info(verbose=True) for full missing counts/types on wide DFs [OK]
Common Mistakes:
Using df.info() on wide DFs (truncates columns)
Using invalid parameters with info()
Confusing verbose with missing data display
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.