Bird
Raised Fist0
Data Analysis Pythondata~10 mins

Aggregation functions (sum, mean, std) in Data Analysis Python - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to calculate the sum of the 'sales' column in the DataFrame.

Data Analysis Python
total_sales = df['sales'].[1]()
Drag options to blanks, or click blank then click option'
Asum
Bstd
Cmean
Dcount
Attempts:
3 left
💡 Hint
Common Mistakes
Using mean() instead of sum() to add values.
Using std() which calculates spread, not total.
2fill in blank
medium

Complete the code to find the average (mean) of the 'age' column.

Data Analysis Python
average_age = df['age'].[1]()
Drag options to blanks, or click blank then click option'
Astd
Bsum
Cmin
Dmean
Attempts:
3 left
💡 Hint
Common Mistakes
Using sum() without dividing by count.
Using std() which measures spread, not average.
3fill in blank
hard

Fix the error in the code to calculate the standard deviation of the 'height' column.

Data Analysis Python
height_std = df['height'].[1]()
Drag options to blanks, or click blank then click option'
Asum
Bstd
Cmedian
Dmean
Attempts:
3 left
💡 Hint
Common Mistakes
Using mean() or sum() instead of std().
Using median() which finds the middle value, not spread.
4fill in blank
hard

Fill both blanks to create a dictionary with word lengths for words longer than 4 characters.

Data Analysis Python
lengths = {word: [1] for word in words if len(word) [2] 4}
Drag options to blanks, or click blank then click option'
Alen(word)
B>
C<
Dword
Attempts:
3 left
💡 Hint
Common Mistakes
Using '<' instead of '>' causing wrong filtering.
Using 'word' instead of 'len(word)' for length.
5fill in blank
hard

Fill all three blanks to create a dictionary with uppercase keys and values greater than 0.

Data Analysis Python
result = [1]: [2] for k, v in data.items() if v [3] 0
Drag options to blanks, or click blank then click option'
Ak.upper()
Bv
C>
Dk.lower()
Attempts:
3 left
💡 Hint
Common Mistakes
Using k.lower() instead of k.upper() for keys.
Using '<' instead of '>' in the filter condition.

Practice

(1/5)
1. What does the mean() function calculate in a dataset?
easy
A. The most frequent value in the data
B. The total sum of all data points
C. The difference between the largest and smallest values
D. The average value of the data

Solution

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

    The mean() function calculates the average by adding all values and dividing by the count.
  2. Step 2: Compare with other options

    Sum is total, range is difference, mode is most frequent. Only mean is average.
  3. Final Answer:

    The average value of the data -> Option D
  4. Quick Check:

    mean = average [OK]
Hint: Mean is average, sum is total, std is spread [OK]
Common Mistakes:
  • Confusing mean with sum
  • Thinking mean finds the most frequent value
  • Mixing mean with range or mode
2. Which of the following is the correct way to calculate the standard deviation of a pandas DataFrame column named data?
easy
A. df.std(data)
B. std(df['data'])
C. df.data.std()
D. df['data'].standard_deviation()

Solution

  1. Step 1: Recall pandas syntax for std()

    In pandas, to get std of a column, use df.column.std() or df['column'].std().
  2. Step 2: Check each option

    df.data.std() uses correct dot notation. df.std(data) is wrong syntax. std(df['data']) is not a pandas function call. df['data'].standard_deviation() uses a non-existent method.
  3. Final Answer:

    df.data.std() -> Option C
  4. Quick Check:

    Use dot notation with std() [OK]
Hint: Use df.column.std() to get standard deviation [OK]
Common Mistakes:
  • Calling std() as a standalone function
  • Using wrong method names
  • Passing column name as argument to std()
3. Given the following code:
import pandas as pd
df = pd.DataFrame({'values': [10, 20, 30, 40, 50]})
result = df['values'].sum()

What is the value of result?
medium
A. 150
B. 30
C. 25
D. 10

Solution

  1. Step 1: Identify the data values

    The column 'values' contains [10, 20, 30, 40, 50].
  2. Step 2: Calculate the sum

    Sum = 10 + 20 + 30 + 40 + 50 = 150.
  3. Final Answer:

    150 -> Option A
  4. Quick Check:

    Sum of values = 150 [OK]
Hint: Add all numbers to get sum [OK]
Common Mistakes:
  • Calculating mean instead of sum
  • Adding only first two numbers
  • Confusing sum with count
4. The following code is intended to calculate the mean of a list but causes an error:
import pandas as pd
numbers = [5, 10, 15]
mean_value = numbers.mean()

What is the error and how to fix it?
medium
A. Error: 'list' object has no attribute 'mean'. Fix by converting list to pandas Series first.
B. Error: mean() requires two arguments. Fix by adding an argument.
C. Error: mean() is not imported. Fix by importing mean from pandas.
D. No error, code runs correctly.

Solution

  1. Step 1: Identify the error cause

    Python lists do not have a mean() method, so calling numbers.mean() causes an AttributeError.
  2. Step 2: Fix by converting list to pandas Series

    Convert list to pd.Series(numbers) then call .mean() to get the average.
  3. Final Answer:

    Error: 'list' object has no attribute 'mean'. Fix by converting list to pandas Series first. -> Option A
  4. Quick Check:

    Lists lack mean(), use pd.Series [OK]
Hint: Convert list to Series before calling mean() [OK]
Common Mistakes:
  • Calling mean() directly on list
  • Trying to import mean() separately
  • Assuming mean() needs arguments
5. You have a DataFrame df with a column scores containing exam scores. You want to find the average score but only for scores above 50. Which code correctly calculates this?
hard
A. df['scores'].mean(df['scores'] > 50)
B. df[df['scores'] > 50]['scores'].mean()
C. df['scores'].sum() / 50
D. df['scores'].std()[df['scores'] > 50]

Solution

  1. Step 1: Filter scores greater than 50

    Use df[df['scores'] > 50] to select rows where scores are above 50.
  2. Step 2: Calculate mean of filtered scores

    Access the 'scores' column of filtered data and call .mean() to get average.
  3. Final Answer:

    df[df['scores'] > 50]['scores'].mean() -> Option B
  4. Quick Check:

    Filter then mean = correct approach [OK]
Hint: Filter first, then apply mean() [OK]
Common Mistakes:
  • Passing condition inside mean()
  • Dividing sum by 50 instead of count
  • Using std() instead of mean()
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