Data analysis workflow (collect, clean, explore, visualize, conclude)
📖 Scenario: You work as a data analyst for a small online store. You have sales data that needs to be checked and understood before sharing insights with your team.
🎯 Goal: Build a simple data analysis workflow in Python to collect data, clean it, explore basic statistics, visualize sales trends, and draw conclusions.
📋 What You'll Learn
Create a dictionary with sales data including product names and sales numbers
Add a threshold variable to filter low sales
Use a dictionary comprehension to filter products with sales above the threshold
Print the filtered sales data
Use matplotlib to create a bar chart of filtered sales
💡 Why This Matters
🌍 Real World
Data analysts often need to collect raw data, clean it by filtering or correcting, explore it to find patterns, visualize results for easy understanding, and then share conclusions with others.
💼 Career
This workflow is a basic but essential skill for data analysts, business analysts, and anyone working with data to make informed decisions.
Progress0 / 4 steps
1
DATA SETUP: Create sales data dictionary
Create a dictionary called sales_data 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. Separate keys and values with colons.
2
CONFIGURATION: Set sales threshold
Create a variable called sales_threshold and set it to 100.
Data Analysis Python
Hint
Just assign the number 100 to the variable sales_threshold.
3
CORE LOGIC: Filter sales data above threshold
Use a dictionary comprehension to create a new dictionary called filtered_sales that includes only products from sales_data with sales greater than sales_threshold.
Data Analysis Python
Hint
Use {product: sales for product, sales in sales_data.items() if sales > sales_threshold}.
4
OUTPUT: Print filtered sales and visualize
Print the filtered_sales dictionary. Then import matplotlib.pyplot as plt and create a bar chart showing product names on the x-axis and sales numbers on the y-axis using plt.bar(). Finally, call plt.show() to display the chart.
Data Analysis Python
Hint
Use print(filtered_sales) and then create a bar chart with plt.bar() using keys and values from filtered_sales.
Practice
(1/5)
1. Which step in the data analysis workflow involves removing errors and fixing missing values in the data?
easy
A. Collect
B. Clean
C. Visualize
D. Conclude
Solution
Step 1: Understand the meaning of each workflow step
Cleaning data means fixing errors and handling missing values to prepare data for analysis.
Step 2: Match the step to the description
Removing errors and fixing missing values is exactly what cleaning does, not collecting or visualizing.
Final Answer:
Clean -> Option B
Quick Check:
Cleaning = Fix errors and missing values [OK]
Hint: Cleaning fixes errors and missing data [OK]
Common Mistakes:
Confusing 'collect' with cleaning
Thinking visualization fixes data
Mixing 'conclude' with cleaning step
2. Which Python library is commonly used for data visualization in the data analysis workflow?
easy
A. matplotlib
B. scikit-learn
C. numpy
D. pandas
Solution
Step 1: Identify libraries and their main uses
pandas is for data manipulation, numpy for numerical operations, scikit-learn for machine learning, matplotlib for plotting graphs.
Step 2: Choose the library for visualization
matplotlib is the standard Python library for creating charts and graphs.
Final Answer:
matplotlib -> Option A
Quick Check:
Visualization = matplotlib [OK]
Hint: matplotlib is for plotting graphs [OK]
Common Mistakes:
Choosing pandas for visualization
Confusing numpy with plotting
Selecting scikit-learn for charts
3. What will be the output of this Python code snippet?
A. DataFrame with all rows including those with None values
B. DataFrame with rows containing None values replaced by 0
C. DataFrame with rows containing None values removed
D. Error because dropna() is not a valid method
Solution
Step 1: Understand what dropna() does in pandas
dropna() removes rows that have any missing (None/NaN) values.
Step 2: Apply dropna() to the DataFrame
Rows with None in 'age' or 'score' are removed, leaving only rows with complete data.
Final Answer:
DataFrame with rows containing None values removed -> Option C
Quick Check:
dropna() removes rows with missing data [OK]
Hint: dropna() removes rows with missing values [OK]
Common Mistakes:
Thinking dropna() replaces missing values
Expecting an error from dropna()
Assuming dropna() keeps all rows
4. Identify the error in this data exploration code and choose the correct fix:
import pandas as pd
data = {'height': [170, 165, 180], 'weight': [65, 70, 75]}
df = pd.DataFrame(data)
print(df.mean(axis=1))
medium
A. No error, code runs correctly
B. Use df.mean() without axis parameter
C. Replace df.mean(axis=1) with df.sum(axis=1)
D. Change axis=1 to axis=0 to get mean of columns
Solution
Step 1: Understand what df.mean(axis=1) does
axis=1 calculates the mean across columns for each row, which is valid here.
Step 2: Check if code runs without error
The code runs correctly and prints the mean height and weight per row.
Final Answer:
No error, code runs correctly -> Option A
Quick Check:
df.mean(axis=1) calculates row means [OK]
Hint: axis=1 means row-wise operation [OK]
Common Mistakes:
Thinking axis=1 causes error
Confusing axis=0 and axis=1
Replacing mean with sum unnecessarily
5. You have a dataset with sales data including missing values. Which sequence of steps correctly follows the data analysis workflow to find average sales per region?
Options: A) Collect data -> Visualize data -> Clean data -> Explore data -> Conclude B) Collect data -> Clean data -> Explore data -> Visualize data -> Conclude C) Clean data -> Collect data -> Explore data -> Visualize data -> Conclude D) Collect data -> Explore data -> Clean data -> Visualize data -> Conclude
hard
A. Collect data -> Visualize data -> Clean data -> Explore data -> Conclude
B. Collect data -> Explore data -> Clean data -> Visualize data -> Conclude
C. Clean data -> Collect data -> Explore data -> Visualize data -> Conclude
D. Collect data -> Clean data -> Explore data -> Visualize data -> Conclude
Solution
Step 1: Recall the correct order of data analysis workflow
The standard order is: collect data, clean data, explore data, visualize data, then conclude.
Step 2: Match the options to this order
Collect data -> Clean data -> Explore data -> Visualize data -> Conclude matches the correct sequence exactly.
Final Answer:
Collect data -> Clean data -> Explore data -> Visualize data -> Conclude -> Option D