Bird
Raised Fist0
Pandasdata~5 mins

describe() for statistical summary in Pandas

Choose your learning style10 modes available
Introduction

The describe() function quickly shows key statistics about your data. It helps you understand your data's shape and spread without complex calculations.

You want to see the average, minimum, and maximum values of a dataset.
You need a quick summary of data before deeper analysis.
You want to check if there are missing or unusual values in your data.
You want to compare basic statistics across different columns.
You want to understand the distribution of numeric data in a table.
Syntax
Pandas
DataFrame.describe(percentiles=None, include=None, exclude=None, datetime_is_numeric=False)

describe() works on numeric columns by default.

You can include other data types by using the include parameter.

Examples
Shows summary statistics for all numeric columns in the DataFrame.
Pandas
df.describe()
Shows summary statistics for all columns, including non-numeric ones.
Pandas
df.describe(include='all')
Shows summary statistics including the 10th and 90th percentiles.
Pandas
df.describe(percentiles=[0.1, 0.9])
Sample Program

This code creates a small table with age, height, and weight columns. Then it uses describe() to get a quick statistical summary of these columns.

Pandas
import pandas as pd

data = {
    'age': [23, 45, 31, 35, 22],
    'height': [165, 180, 175, 170, 160],
    'weight': [65, 85, 70, 72, 60]
}
df = pd.DataFrame(data)

summary = df.describe()
print(summary)
OutputSuccess
Important Notes

describe() ignores missing values automatically.

For categorical data, describe() shows count, unique values, top (most frequent) value, and frequency.

Summary

describe() gives a quick overview of your data's main statistics.

It helps spot data issues and understand data distribution fast.

You can customize it to include different data types or percentiles.

Practice

(1/5)
1. What does the describe() function in pandas primarily provide for a DataFrame?
easy
A. A statistical summary including count, mean, std, min, and max
B. A list of all column names in the DataFrame
C. A plot of the data distribution
D. A sorted version of the DataFrame

Solution

  1. Step 1: Understand the purpose of describe()

    The describe() function gives a quick statistical summary of numerical columns by default.
  2. Step 2: Identify what the summary includes

    This summary includes count, mean, standard deviation, minimum, maximum, and quartiles.
  3. Final Answer:

    A statistical summary including count, mean, std, min, and max -> Option A
  4. Quick Check:

    describe() = statistical summary [OK]
Hint: Remember: describe() shows stats, not column names or plots [OK]
Common Mistakes:
  • Thinking describe() lists column names
  • Confusing describe() with plotting functions
  • Assuming describe() sorts data
2. Which of the following is the correct way to get a statistical summary of a pandas DataFrame named df?
easy
A. df.summary()
B. df.describe()
C. describe(df)
D. df.stats()

Solution

  1. Step 1: Recall pandas method syntax

    In pandas, methods are called on DataFrame objects using dot notation.
  2. Step 2: Identify the correct method name

    The method to get a statistical summary is describe(), so df.describe() is correct.
  3. Final Answer:

    df.describe() -> Option B
  4. Quick Check:

    Method call on DataFrame = df.describe() [OK]
Hint: Use dot notation: df.describe() for summary [OK]
Common Mistakes:
  • Using non-existent methods like summary() or stats()
  • Calling describe() as a standalone function
  • Missing parentheses after describe
3. Given the DataFrame:
import pandas as pd
data = {'A': [1, 2, 3, 4, 5], 'B': [5, 4, 3, 2, 1]}
df = pd.DataFrame(data)
print(df.describe())

What is the output for the mean of column A?
medium
A. 1
B. 2.5
C. 15
D. 3.0

Solution

  1. Step 1: Calculate the mean of column A

    Column A values are [1, 2, 3, 4, 5]. The mean is (1+2+3+4+5)/5 = 15/5 = 3.0.
  2. Step 2: Confirm output from describe()

    The describe() method prints the mean as 3.0 for column A.
  3. Final Answer:

    3.0 -> Option D
  4. Quick Check:

    Mean of [1,2,3,4,5] = 3.0 [OK]
Hint: Add values and divide by count for mean [OK]
Common Mistakes:
  • Confusing sum with mean
  • Using median instead of mean
  • Misreading the output values
4. What is wrong with this code snippet to get a statistical summary of a DataFrame df?
summary = df.describe
medium
A. Missing parentheses to call the method
B. DataFrame does not have describe method
C. describe() requires arguments
D. Variable name 'summary' is invalid

Solution

  1. Step 1: Check method call syntax

    The code assigns df.describe without parentheses, so it assigns the method itself, not the result.
  2. Step 2: Identify the fix

    Adding parentheses df.describe() calls the method and returns the summary.
  3. Final Answer:

    Missing parentheses to call the method -> Option A
  4. Quick Check:

    Method call needs () to execute [OK]
Hint: Always add () to call methods like describe() [OK]
Common Mistakes:
  • Forgetting parentheses after method names
  • Thinking describe needs arguments
  • Confusing method with variable name errors
5. You have a DataFrame df with both numeric and categorical columns. How can you use describe() to get a summary that includes statistics for all columns?
hard
A. df.describe(include='numeric')
B. df.describe(include='categorical')
C. df.describe(include='all')
D. df.describe(include=None)

Solution

  1. Step 1: Understand default behavior of describe()

    By default, describe() summarizes only numeric columns.
  2. Step 2: Use include='all' to summarize all columns

    Passing include='all' makes describe() include numeric and categorical columns.
  3. Final Answer:

    df.describe(include='all') -> Option C
  4. Quick Check:

    include='all' shows all columns summary [OK]
Hint: Use include='all' to summarize all column types [OK]
Common Mistakes:
  • Using include='numeric' which is default
  • Using include='categorical' which is invalid
  • Passing include=None which defaults to numeric only
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