📖 Scenario: You work as a financial analyst. You have a small dataset of monthly sales figures for different products. Your task is to analyze this data to find which products have sales above a certain threshold.
🎯 Goal: Build a simple Python program that stores sales data, sets a sales threshold, filters products with sales above the threshold, and prints the filtered results.
📋 What You'll Learn
Create a dictionary with product names as keys and monthly sales as values.
Create a variable to hold the sales threshold.
Use a dictionary comprehension to filter products with sales above the threshold.
Print the filtered dictionary showing products with sales above the threshold.
💡 Why This Matters
🌍 Real World
Financial analysts often need to filter and analyze sales data to identify top-performing products.
💼 Career
This pattern helps in preparing reports and making data-driven decisions in finance and sales roles.
Progress0 / 4 steps
1
Create the sales data dictionary
Create a dictionary called sales_data with these exact entries: 'Laptop': 1200, 'Smartphone': 850, 'Tablet': 400, 'Headphones': 150, 'Smartwatch': 300.
Data Analysis Python
Hint
Use curly braces {} to create a dictionary with keys and values separated by colons.
2
Set the sales threshold
Create a variable called threshold and set it to 500.
Data Analysis Python
Hint
Just assign the number 500 to the variable threshold.
3
Filter products with sales above threshold
Use a dictionary comprehension to create a new dictionary called high_sales that contains only the products from sales_data with sales greater than threshold. Use product and sales as the loop variables.
Data Analysis Python
Hint
Use {key: value for key, value in dict.items() if condition} to filter the dictionary.
4
Print the filtered high sales products
Print the high_sales dictionary to display the products with sales above the threshold.
Data Analysis Python
Hint
Use print(high_sales) to show the filtered dictionary.
Practice
(1/5)
1. What is the main purpose of analyzing financial data in Python?
easy
A. To write novels
B. To create video games
C. To design websites
D. To understand money trends and make informed decisions
Solution
Step 1: Understand the goal of financial data analysis
Financial data analysis focuses on studying money-related data to find patterns and trends.
Step 2: Match the goal with the options
Only To understand money trends and make informed decisions talks about understanding money trends and making decisions, which fits the purpose.
Final Answer:
To understand money trends and make informed decisions -> Option D
Quick Check:
Financial data analysis = Understand money trends [OK]
Hint: Focus on money trends and decisions for financial analysis [OK]
Common Mistakes:
Confusing financial analysis with unrelated fields
Ignoring the purpose of data analysis
Choosing options unrelated to money or data
2. Which of the following is the correct way to import pandas for financial data analysis in Python?
easy
A. import pandas as pd
B. import panda as pd
C. import pd as pandas
D. import pandas
Solution
Step 1: Recall the standard pandas import syntax
The common way to import pandas is using 'import pandas as pd' for easy reference.
Step 2: Check each option for correctness
import pandas as pd matches the standard syntax. Options B and C have wrong module names or order. import pandas imports pandas but without alias, which is less common.
Final Answer:
import pandas as pd -> Option A
Quick Check:
Standard pandas import = import pandas as pd [OK]
Hint: Use 'import pandas as pd' for standard data analysis [OK]
A. No error; code correctly calculates daily returns
B. pct_change() should be pct_change(1)
C. prices should be a DataFrame, not Series
D. Missing import for numpy
Solution
Step 1: Understand pct_change() method
pct_change() calculates percentage change between current and prior element by default (periods=1).
Step 2: Check code correctness
prices is a Series, which supports pct_change(). No import or DataFrame needed. Code runs fine and prints daily returns.
Final Answer:
No error; code correctly calculates daily returns -> Option A
Quick Check:
pct_change() default periods=1 works [OK]
Hint: pct_change() defaults to 1 period; no extra args needed [OK]
Common Mistakes:
Thinking pct_change needs argument 1 explicitly
Confusing Series with DataFrame necessity
Assuming numpy import is required for pct_change
5. You have a DataFrame df with columns Date (string), Open, and Close prices. How do you create a new column Daily_Return that shows the percentage change from Open to Close for each day?
hard
A. df['Daily_Return'] = df['Close'].pct_change()
B. df['Daily_Return'] = df['Open'] / df['Close']
C. df['Daily_Return'] = (df['Close'] - df['Open']) / df['Open'] * 100
D. df['Daily_Return'] = df['Close'] - df['Open']
Solution
Step 1: Understand daily return calculation
Daily return is the percent change from Open to Close price: ((Close - Open) / Open) * 100.
Step 2: Match formula with options
df['Daily_Return'] = (df['Close'] - df['Open']) / df['Open'] * 100 correctly applies the formula. df['Daily_Return'] = df['Close'].pct_change() calculates percent change between rows, not within a row. Options C and D do not calculate percentage change correctly.