📖 Scenario: Imagine you work in a small bookstore. You have data about book sales and want to organize it to understand sales better.
🎯 Goal: You will create a pandas Series and a pandas DataFrame to see how they relate. You will extract a Series from a DataFrame and print both to compare.
📋 What You'll Learn
Create a pandas Series with book titles as index and number of copies sold as values.
Create a pandas DataFrame with book titles, copies sold, and price per book.
Extract the 'copies sold' column from the DataFrame as a Series.
Print the Series and DataFrame to observe their relationship.
💡 Why This Matters
🌍 Real World
Organizing and analyzing sales data helps bookstores track performance and make decisions.
💼 Career
Data scientists often work with Series and DataFrames to clean, analyze, and visualize data efficiently.
Progress0 / 4 steps
1
Create a pandas Series for book sales
Import pandas as pd. Create a pandas Series called book_sales with these entries: 'Book A': 120, 'Book B': 85, 'Book C': 60. Use the book titles as the index.
Pandas
Hint
Use pd.Series() with a dictionary where keys are book titles and values are copies sold.
2
Create a pandas DataFrame with book details
Create a pandas DataFrame called book_data with columns 'Title', 'Copies Sold', and 'Price'. Use these rows: ['Book A', 120, 15.99], ['Book B', 85, 12.50], ['Book C', 60, 9.99].
Pandas
Hint
Use pd.DataFrame() with a dictionary of lists for each column.
3
Extract the 'Copies Sold' column as a Series
Create a variable called copies_series by extracting the 'Copies Sold' column from the book_data DataFrame.
Pandas
Hint
Use bracket notation book_data['Copies Sold'] to get the column as a Series.
4
Print the Series and DataFrame
Print the book_sales Series, the book_data DataFrame, and the copies_series Series to see their contents.
Pandas
Hint
Use print() for each variable to see their data.
Practice
(1/5)
1.
What is a pandas.Series?
easy
A. A function to read CSV files
B. A table with multiple rows and columns
C. A method to plot graphs
D. A single labeled column of data
Solution
Step 1: Understand the definition of Series
A Series in pandas is a one-dimensional labeled array, like a single column of data.
Step 2: Compare with other options
Options A, B, and D describe file reading, DataFrame, and plotting, which are not Series.
Final Answer:
A single labeled column of data -> Option D
Quick Check:
Series = single column [OK]
Hint: Series is one column, DataFrame is many columns [OK]
Common Mistakes:
Confusing Series with DataFrame
Thinking Series is a function
Mixing Series with plotting methods
2.
Which of the following is the correct way to get a Series from a DataFrame named df?
df = pd.DataFrame({"A": [1, 2], "B": [3, 4]})
easy
A. df["A"]
B. df.loc["A"]
C. df.iloc["A"]
D. df.get_series("A")
Solution
Step 1: Identify how to select a column as Series
Using df["A"] selects the column labeled "A" as a Series.
Step 2: Check other options for correctness
df.loc["A"] selects a row, df.iloc["A"] is invalid because iloc expects integer index, df.get_series() is not a pandas method.
Final Answer:
df["A"] -> Option A
Quick Check:
Column selection uses df["col"] [OK]
Hint: Use df["column_name"] to get a Series [OK]
Common Mistakes:
Using loc with column name instead of row label
Using iloc with string index
Assuming get_series() exists
3.
What is the output of this code?
import pandas as pd
df = pd.DataFrame({"X": [10, 20], "Y": [30, 40]})
series = df["Y"]
print(type(series))
medium
A. <class 'pandas.core.frame.DataFrame'>
B. <class 'pandas.core.series.Series'>
C. <class 'list'>
D. TypeError
Solution
Step 1: Understand df["Y"] returns a Series
Selecting a single column from a DataFrame returns a Series object.
Hint: df[column] returns Series, not DataFrame [OK]
Common Mistakes:
Thinking df[column] returns DataFrame
Confusing Series with list
Expecting an error from this code
4.
Find the error in this code snippet:
import pandas as pd
df = pd.DataFrame({"A": [1, 2], "B": [3, 4]})
series = df.loc[:, "A"]
print(type(series))
medium
A. Using df.loc[:, "A"] returns a DataFrame, not Series
B. df.loc["A"] is the correct way to get Series
C. df.loc[:, "A"] returns a Series, no error here
D. df.loc[:, "A"] causes a syntax error
Solution
Step 1: Understand df.loc[:, "A"] selection
df.loc[:, "A"] selects all rows and column "A", returning a Series.
Step 2: Check if this causes error
This is valid syntax and returns a Series, so no error occurs.
Final Answer:
df.loc[:, "A"] returns a Series, no error here -> Option C
Quick Check:
df.loc with column label returns Series [OK]
Hint: df.loc[:, col] returns Series if col is single label [OK]
Common Mistakes:
Thinking df.loc[:, col] returns DataFrame
Confusing row and column selection
Expecting syntax error on loc usage
5.
You have a DataFrame df with columns ['A', 'B', 'C']. You want to create a new DataFrame with only columns 'A' and 'C' as Series combined. Which code correctly does this?
hard
A. All of the above
B. new_df = df[["A", "C"]]
C. new_df = df.loc[:, ["A", "C"]]
D. new_df = pd.DataFrame({"A": df["A"], "C": df["C"]})
Solution
Step 1: Understand ways to select columns
df[["A", "C"]] and df.loc[:, ["A", "C"]] both select columns as DataFrame.
Step 2: Creating DataFrame from Series
pd.DataFrame({"A": df["A"], "C": df["C"]}) creates a new DataFrame from two Series.
Step 3: Check if all options are valid
All three options produce a DataFrame with columns A and C.
Final Answer:
All of the above -> Option A
Quick Check:
Multiple ways to select columns as DataFrame [OK]
Hint: Selecting multiple columns: use list or dict of Series [OK]
Common Mistakes:
Thinking only one method works
Confusing Series with DataFrame in selection
Using wrong syntax for multiple columns
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.