📖 Scenario: You are a data analyst working with a small dataset of flower measurements. You want to explore how different features relate to each other visually.
🎯 Goal: Create a pair plot to visualize relationships between the features in the dataset.
📋 What You'll Learn
Create a dictionary with flower data
Convert the dictionary to a pandas DataFrame
Set a variable to select specific features
Use seaborn to create a pair plot for the selected features
Print the DataFrame to see the data
💡 Why This Matters
🌍 Real World
Pair plots help data scientists quickly see how features relate to each other, which is useful in exploring new datasets.
💼 Career
Understanding feature relationships is key in data analysis and machine learning tasks, helping to select important variables and detect patterns.
Progress0 / 4 steps
1
Create the flower data dictionary
Create a dictionary called flower_data with these exact entries: 'sepal_length': [5.1, 4.9, 4.7, 4.6, 5.0], 'sepal_width': [3.5, 3.0, 3.2, 3.1, 3.6], 'petal_length': [1.4, 1.4, 1.3, 1.5, 1.4], 'petal_width': [0.2, 0.2, 0.2, 0.2, 0.2], and 'species': ['setosa', 'setosa', 'setosa', 'setosa', 'setosa'].
Data Analysis Python
Hint
Use curly braces to create the dictionary. Each key should map to a list of values.
2
Convert dictionary to DataFrame and select features
Import pandas as pd. Create a DataFrame called df from flower_data. Then create a list called features with these exact strings: 'sepal_length', 'sepal_width', 'petal_length', and 'petal_width'.
Data Analysis Python
Hint
Use pd.DataFrame() to convert the dictionary. Create the list exactly as shown.
3
Create the pair plot using seaborn
Import seaborn as sns. Use sns.pairplot() to create a pair plot from df using the columns in features. Store the result in a variable called pair_plot.
Data Analysis Python
Hint
Use sns.pairplot() and pass df[features] to select columns.
4
Print the DataFrame to see the data
Write a print statement to display the DataFrame df.
Data Analysis Python
Hint
Use print(df) to display the DataFrame.
Practice
(1/5)
1. What is the main purpose of a pair plot in data analysis?
easy
A. To calculate the mean of each feature
B. To visualize relationships between all pairs of features in a dataset
C. To sort data by a single feature
D. To remove missing values from the dataset
Solution
Step 1: Understand what a pair plot shows
A pair plot displays scatter plots for every pair of features, showing how they relate visually.
Step 2: Compare options to the definition
Only To visualize relationships between all pairs of features in a dataset describes this visualization purpose correctly; others describe unrelated tasks.
Final Answer:
To visualize relationships between all pairs of features in a dataset -> Option B
Quick Check:
Pair plot = visualize feature pairs [OK]
Hint: Pair plots show all feature pairs visually [OK]
Common Mistakes:
Confusing pair plots with summary statistics
Thinking pair plots sort or clean data
Assuming pair plots show only one feature
2. Which of the following is the correct way to create a pair plot using seaborn with a hue for categories stored in column 'species' of DataFrame df?
easy
A. sns.pairplot(df, group='species')
B. sns.pairplot(df, color='species')
C. sns.pairplot(df, hue='species')
D. sns.pairplot(df, category='species')
Solution
Step 1: Recall seaborn pairplot syntax
The correct parameter to color points by category is hue.
Step 2: Match options to correct syntax
Only sns.pairplot(df, hue='species') uses hue='species', which is correct. Others use invalid parameters.
Final Answer:
sns.pairplot(df, hue='species') -> Option C
Quick Check:
Use hue for categories in pairplot [OK]
Hint: Use hue='column_name' to color by category [OK]
Common Mistakes:
Using 'color' instead of 'hue'
Using non-existent parameters like 'category' or 'group'
Forgetting to import seaborn as sns
3. Given the code below, what will be the shape of the DataFrame df used in the pair plot?
import seaborn as sns
import pandas as pd
# Load iris dataset
iris = sns.load_dataset('iris')
# Select only numeric columns
numeric_df = iris.select_dtypes(include=['float64'])
# Create pair plot
sns.pairplot(numeric_df)
medium
A. (150, 4)
B. (150, 3)
C. (150, 5)
D. (150, 2)
Solution
Step 1: Check iris dataset columns
Iris dataset has 150 rows and 5 columns: 4 numeric (sepal_length, sepal_width, petal_length, petal_width) and 1 categorical (species).
Step 2: Select only float64 columns
Using select_dtypes(include=['float64']) keeps only the 4 numeric columns. But in seaborn's iris dataset, numeric columns are float64 except species which is object.
Step 3: Confirm numeric_df shape
Numeric columns are 4, so shape is (150, 4). But the question asks about numeric_df used in pairplot. The code uses numeric_df, so shape is (150, 4).
Final Answer:
(150, 4) -> Option A
Quick Check:
Numeric columns count = 4, rows = 150 [OK]
Hint: Count numeric columns after filtering [OK]
Common Mistakes:
Counting categorical columns as numeric
Confusing number of rows with columns
Assuming species is numeric
4. What is wrong with this code snippet that tries to create a pair plot with seaborn?
A. The DataFrame columns must all be numeric except hue
B. The hue column 'C' must be numeric, but it is categorical
C. The pairplot function does not accept the hue parameter
D. The DataFrame is too small to create a pair plot
Solution
Step 1: Understand pairplot requirements
Pair plots require numeric columns to plot pairwise relationships. The hue column can be categorical.
Step 2: Check DataFrame columns
Columns 'A' and 'B' are numeric, 'C' is categorical used as hue. This is valid. But the DataFrame is very small (3 rows), which is allowed but not ideal.
Step 3: Identify the actual problem
Seaborn pairplot requires at least two numeric columns to plot pairs. Here, there are two numeric columns, so it should work. The code is valid and will run without error.
Step 4: Re-examine options
The DataFrame columns must all be numeric except hue says all columns except hue must be numeric, which is true. The hue column 'C' must be numeric, but it is categorical is wrong because hue can be categorical. The DataFrame is too small to create a pair plot is not an error, just small data. The pairplot function does not accept the hue parameter is false; hue is accepted.
Final Answer:
The DataFrame columns must all be numeric except hue -> Option A
Quick Check:
Non-hue columns must be numeric [OK]
Hint: Non-hue columns must be numeric for pairplot [OK]
Common Mistakes:
Thinking hue must be numeric
Assuming pairplot fails on small data
Believing hue parameter is invalid
5. You have a dataset with features: 'height', 'weight', 'age', and a categorical column 'gender'. You want to create a pair plot to compare feature relationships colored by gender. However, you notice the plot shows no color difference. What is the most likely cause?
Choose the best solution.
hard
A. The 'gender' column is numeric, so hue does not separate categories
B. The features are all categorical, so pairplot cannot color by hue
C. The dataset has missing values in 'gender' causing hue to fail
D. You forgot to pass the hue='gender' parameter in pairplot
Solution
Step 1: Understand how hue works in pairplot
Hue colors points by categories in the specified column. If hue is not set, no color difference appears.
Step 2: Analyze the problem
The plot shows no color difference, meaning hue was likely not specified or incorrectly set.
Step 3: Evaluate options
The 'gender' column is numeric, so hue does not separate categories is unlikely because numeric columns can still be used as hue but may not show distinct colors. The features are all categorical, so pairplot cannot color by hue is wrong because features are numeric. The dataset has missing values in 'gender' causing hue to fail might cause missing colors but usually raises warnings.
Final Answer:
You forgot to pass the hue='gender' parameter in pairplot -> Option D
Quick Check:
Missing hue parameter = no color difference [OK]
Hint: Always set hue='category' to color points [OK]
Common Mistakes:
Assuming numeric hue shows no color
Ignoring the need to specify hue
Blaming missing values without checking
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.