Bird
Raised Fist0
Data Analysis Pythondata~30 mins

First data analysis walkthrough in Data Analysis Python - Mini Project: Build & Apply

Choose your learning style10 modes available
First data analysis walkthrough
📖 Scenario: You have a small store and you want to analyze your weekly sales data to understand how well your products are doing.
🎯 Goal: You will create a simple program to store sales data, set a sales target, find products that met or exceeded the target, and display those products.
📋 What You'll Learn
Create a dictionary with product names and their sales numbers
Create a variable for the sales target
Use a dictionary comprehension to find products with sales greater than or equal to the target
Print the resulting dictionary of products meeting the target
💡 Why This Matters
🌍 Real World
Small business owners often analyze sales data to understand which products are performing well and which need attention.
💼 Career
Data analysts use similar techniques to filter and analyze data sets to provide insights for business decisions.
Progress0 / 4 steps
1
Create the sales data dictionary
Create a dictionary called sales with these exact entries: 'Apples': 150, 'Bananas': 90, 'Cherries': 120, 'Dates': 60, 'Elderberries': 30.
Data Analysis Python
Hint

Use curly braces {} to create a dictionary. Each entry has a product name as a string key and a sales number as an integer value.

2
Set the sales target
Create a variable called target and set it to the integer 100.
Data Analysis Python
Hint

Just assign the number 100 to the variable target.

3
Find products meeting the sales target
Use a dictionary comprehension to create a new dictionary called top_sellers that contains only the products from sales with sales greater than or equal to target. Use product and amount as the loop variables.
Data Analysis Python
Hint

Use the syntax {key: value for key, value in dict.items() if condition} to filter the dictionary.

4
Display the top sellers
Write a print statement to display the top_sellers dictionary.
Data Analysis Python
Hint

Use print(top_sellers) to show the filtered dictionary.

Practice

(1/5)
1. What is the main purpose of using head() on a DataFrame during the first data analysis walkthrough?
easy
A. To check the data types of each column
B. To get summary statistics of numerical columns
C. To quickly see the first few rows of the data
D. To remove missing values from the data

Solution

  1. Step 1: Understand the function head()

    The head() function shows the first few rows of a DataFrame, usually the first 5 rows by default.
  2. Step 2: Purpose in data analysis walkthrough

    Seeing the first few rows helps you quickly understand what kind of data you have and check if it loaded correctly.
  3. Final Answer:

    To quickly see the first few rows of the data -> Option C
  4. Quick Check:

    head() shows first rows [OK]
Hint: Remember: head() shows top rows fast [OK]
Common Mistakes:
  • Confusing head() with describe()
  • Thinking head() gives statistics
  • Assuming head() cleans data
2. Which of the following is the correct syntax to get a summary of data types and non-null counts in a DataFrame named df?
easy
A. df.describe()
B. df.info()
C. df.head()
D. df.summary()

Solution

  1. Step 1: Identify the function for data types and non-null counts

    The info() method on a DataFrame shows data types and counts of non-null values per column.
  2. Step 2: Match syntax with DataFrame df

    Calling df.info() correctly applies this method to the DataFrame named df.
  3. Final Answer:

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

    info() shows data types and counts [OK]
Hint: Use info() to check data types and missing data [OK]
Common Mistakes:
  • Using describe() to check data types
  • Trying summary() which does not exist
  • Confusing head() with info()
3. Given the following code:
import pandas as pd
data = {'age': [25, 30, 22, 40, 28], 'salary': [50000, 60000, 45000, 80000, 52000]}
df = pd.DataFrame(data)
summary = df.describe()

What will be the output of summary.loc['mean', 'salary']?
medium
A. 52000.0
B. SyntaxError
C. 60000.0
D. 57400.0

Solution

  1. Step 1: Calculate the mean of the 'salary' column

    Sum salaries: 50000 + 60000 + 45000 + 80000 + 52000 = 287000. Number of entries: 5. Mean = 287000 / 5 = 57400.0.
  2. Step 2: Understand describe() output

    The describe() method returns a DataFrame with statistics including 'mean' as an index row. Accessing summary.loc['mean', 'salary'] gives the mean salary value.
  3. Final Answer:

    57400.0 -> Option D
  4. Quick Check:

    Mean salary = 57400.0 [OK]
Hint: Sum values and divide by count for mean [OK]
Common Mistakes:
  • Adding incorrectly or missing one value
  • Confusing mean with median or mode
  • Using wrong index or column name
4. You run the following code but get an error:
import pandas as pd
data = {'name': ['Alice', 'Bob'], 'age': [25, 30]}
df = pd.DataFrame(data)
print(df.describe())

What is the most likely reason for the error or unexpected output?
medium
A. The describe() method cannot handle string columns by default
B. The DataFrame is missing a numeric column
C. The DataFrame is empty
D. The describe() method requires a parameter

Solution

  1. Step 1: Check DataFrame columns and types

    The DataFrame has a string column 'name' and a numeric column 'age'.
  2. Step 2: Understand describe() behavior

    By default, describe() summarizes only numeric columns. It ignores string columns unless specified.
  3. Final Answer:

    The describe() method cannot handle string columns by default -> Option A
  4. Quick Check:

    describe() skips strings by default [OK]
Hint: describe() defaults to numeric columns only [OK]
Common Mistakes:
  • Expecting describe() to summarize strings automatically
  • Thinking DataFrame is empty
  • Assuming describe() needs parameters always
5. You have a DataFrame df with columns ['product', 'price', 'quantity']. You want to quickly find the average price of products that have quantity greater than 10. Which code snippet correctly performs this first data analysis step?
hard
A. df[df['quantity'] > 10]['price'].mean()
B. df['price'].mean(df['quantity'] > 10)
C. df.mean()['price'] > 10
D. df.describe('price' > 10)

Solution

  1. Step 1: Filter rows where quantity > 10

    Use df[df['quantity'] > 10] to select only rows with quantity greater than 10.
  2. Step 2: Calculate mean of 'price' column on filtered data

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

    df[df['quantity'] > 10]['price'].mean() -> Option A
  4. Quick Check:

    Filter then mean() gives correct average [OK]
Hint: Filter first, then calculate mean [OK]
Common Mistakes:
  • Passing condition inside mean() incorrectly
  • Using mean() on entire DataFrame without filtering
  • Wrong syntax for describe()
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