A DataFrame is a table-like data structure in pandas that stores data in rows and columns, similar to a spreadsheet or SQL table.
Click to reveal answer
beginner
How do you create a DataFrame from a list of lists?
You pass the list of lists to the pandas.DataFrame() function. Each inner list becomes a row in the DataFrame.
Click to reveal answer
beginner
Why might you want to specify column names when creating a DataFrame from a list of lists?
Specifying column names helps you identify what each column represents, making the data easier to understand and work with.
Click to reveal answer
intermediate
What happens if the inner lists have different lengths when creating a DataFrame?
pandas will fill missing values with NaN (Not a Number) to keep the DataFrame rectangular (same number of columns in each row).
Click to reveal answer
beginner
Show a simple code example to create a DataFrame from a list of lists with column names.
import pandas as pd
data = [[1, 'Alice'], [2, 'Bob'], [3, 'Charlie']]
df = pd.DataFrame(data, columns=['ID', 'Name'])
print(df)
Click to reveal answer
What does each inner list represent when creating a DataFrame from a list of lists?
AAn index label
BA column in the DataFrame
CA DataFrame itself
DA row in the DataFrame
✗ Incorrect
Each inner list corresponds to one row in the DataFrame.
Which pandas function is used to create a DataFrame from a list of lists?
Apd.DataFrame()
Bpd.Series()
Cpd.array()
Dpd.list()
✗ Incorrect
pd.DataFrame() creates a DataFrame from various data structures including list of lists.
What will pandas fill in if inner lists have different lengths?
A0
BEmpty string
CNaN
DRaises an error
✗ Incorrect
pandas fills missing values with NaN to keep the DataFrame rectangular.
How can you name the columns when creating a DataFrame from a list of lists?
AUsing the 'index' parameter
BUsing the 'columns' parameter
CUsing the 'names' parameter
DYou cannot name columns at creation
✗ Incorrect
The 'columns' parameter lets you specify column names.
What type of data structure is a list of lists?
AA nested list
BA dictionary
CA flat list
DA tuple
✗ Incorrect
A list of lists is a nested list where each element is itself a list.
Explain how to create a pandas DataFrame from a list of lists and why you might want to specify column names.
Think about how rows and columns relate to the list structure.
You got /4 concepts.
What happens if the inner lists have different lengths when creating a DataFrame? How does pandas handle this?
Consider how pandas keeps the table shape consistent.
You got /4 concepts.
Practice
(1/5)
1. What does creating a DataFrame from a list of lists in pandas mainly help you do?
easy
A. Organize data into rows and columns for easy analysis
B. Run SQL queries directly on the list
C. Convert data into images automatically
D. Encrypt data for security
Solution
Step 1: Understand DataFrame purpose
A DataFrame is a table-like structure with rows and columns to organize data.
Step 2: Connect list of lists to DataFrame
A list of lists can be converted into this table format for easier data handling.
Final Answer:
Organize data into rows and columns for easy analysis -> Option A
Quick Check:
DataFrame = Table format [OK]
Hint: DataFrames = tables; list of lists = rows [OK]
Common Mistakes:
Thinking DataFrame encrypts data
Confusing DataFrame with image conversion
Assuming list of lists runs SQL
2. Which of the following is the correct way to create a DataFrame from a list of lists data = [[1, 2], [3, 4]] with columns named 'A' and 'B'?
easy
A. pd.DataFrame(data, columns=['A', 'B'])
B. pd.DataFrame(data, names=['A', 'B'])
C. pd.DataFrame(data, cols=['A', 'B'])
D. pd.DataFrame(data, header=['A', 'B'])
Solution
Step 1: Recall DataFrame column naming syntax
Use the parameter columns to name columns when creating a DataFrame.
Step 2: Check each option
Only pd.DataFrame(data, columns=['A', 'B']) uses columns=['A', 'B'], which is correct syntax.
Final Answer:
pd.DataFrame(data, columns=['A', 'B']) -> Option A
Quick Check:
Use columns= for column names [OK]
Hint: Use columns= to name DataFrame columns [OK]
Common Mistakes:
Using names= instead of columns=
Using cols= or header= which are invalid here
Forgetting to pass columns parameter
3. What will be the output of the following code?
import pandas as pd
data = [[10, 20], [30, 40]]
df = pd.DataFrame(data, columns=['X', 'Y'])
print(df)
medium
A. X Y
0 20 10
1 40 30
B. X Y
0 10 20
1 30 40
C. 0 1
X 10 20
Y 30 40
D. Error: columns parameter missing
Solution
Step 1: Create DataFrame with given data and columns
The list of lists becomes rows; columns=['X', 'Y'] names columns accordingly.
Step 2: Print DataFrame
Output shows index 0 and 1 with values 10,20 and 30,40 under columns X and Y.
Final Answer:
X Y
0 10 20
1 30 40 -> Option B
Quick Check:
DataFrame prints rows with columns X, Y [OK]
Hint: Rows = inner lists; columns = names list [OK]
Common Mistakes:
Swapping row and column values
Confusing index with columns
Expecting error without columns parameter
4. Identify the error in this code snippet:
import pandas as pd
data = [[1, 2], [3, 4]]
df = pd.DataFrame(data, columns=['A'])
print(df)
medium
A. DataFrame cannot be created from list of lists
B. Data should be a dictionary, not list of lists
C. Missing import statement for pandas
D. The columns list length does not match data inner list length
Solution
Step 1: Check data shape and columns length
Each inner list has 2 elements, but columns list has only 1 name.
Step 2: Understand pandas error
pandas requires columns length to match number of elements per row.
Final Answer:
The columns list length does not match data inner list length -> Option D
Quick Check:
Columns count = data columns count [OK]
Hint: Columns count must match inner list length [OK]
Common Mistakes:
Ignoring mismatch between columns and data
Thinking list of lists is invalid input
Forgetting to import pandas
5. You have sales data as a list of lists: sales = [[100, 200], [150, 250], [300, 400]] representing sales in two regions. How do you create a DataFrame with columns 'Region1' and 'Region2' and add a new column 'Total' that sums both regions for each row?