How do you add a new column to a pandas DataFrame?
You can add a new column by assigning a list, array, or a single value to a new column name, like df['new_column'] = values.
Click to reveal answer
beginner
What method removes a column from a pandas DataFrame?
Use df.drop('column_name', axis=1) to remove a column. Set inplace=True to change the DataFrame directly.
Click to reveal answer
beginner
Can you add a column based on calculations from other columns? How?
Yes. For example, df['new_col'] = df['col1'] + df['col2'] adds a column by summing two existing columns.
Click to reveal answer
beginner
What does axis=1 mean in the context of dropping columns?
axis=1 tells pandas to operate on columns. Without it, pandas assumes rows (axis=0).
Click to reveal answer
intermediate
How to remove multiple columns at once from a DataFrame?
Pass a list of column names to df.drop(['col1', 'col2'], axis=1) to remove multiple columns.
Click to reveal answer
Which code adds a new column 'age' with all values 30 to DataFrame df?
Adf.remove('age')
Bdf['age'] = 30
Cdf.drop('age')
Ddf.add_column('age', 30)
✗ Incorrect
Assigning a value to a new column name adds that column with the value repeated.
How do you remove the column 'salary' from DataFrame df without changing df itself?
Adf.drop('salary')
Bdf.remove('salary')
Cdf.drop('salary', axis=1)
Ddf.delete('salary')
✗ Incorrect
Use df.drop with axis=1 to remove a column. Without inplace=True, df stays unchanged.
What happens if you do df['total'] = df['price'] * df['quantity']?
AAdds a new column 'total' with product of 'price' and 'quantity'
BDeletes 'total' column
CRaises an error
DReplaces 'price' column
✗ Incorrect
You create a new column by multiplying two existing columns element-wise.
Which axis value is used to drop rows in pandas?
Aaxis=0
Baxis=1
Caxis=2
Daxis=-1
✗ Incorrect
axis=0 refers to rows, axis=1 refers to columns.
How to remove columns 'A' and 'B' from DataFrame df in one command?
Adf.remove(['A', 'B'])
Bdf.drop('A', 'B')
Cdf.delete('A', 'B')
Ddf.drop(['A', 'B'], axis=1)
✗ Incorrect
Pass a list of column names to drop with axis=1 to remove multiple columns.
Explain how to add a new column to a pandas DataFrame using existing columns.
Think about creating a new column by combining or calculating from others.
You got /3 concepts.
Describe the difference between dropping a column with and without inplace=True.
Consider whether the original DataFrame changes or a new one is returned.
You got /3 concepts.
Practice
(1/5)
1. What is the correct way to add a new column named 'age' with all values set to 30 in a pandas DataFrame df?
easy
A. df.append('age', 30)
B. df.add_column('age', 30)
C. df['age'] = 30
D. df.insert_column('age', 30)
Solution
Step 1: Understand how to add columns in pandas
In pandas, you add a new column by assigning a value or list to df['column_name'].
Step 2: Apply the correct syntax to add a column named 'age'
Using df['age'] = 30 adds a new column 'age' with all values set to 30.
Final Answer:
df['age'] = 30 -> Option C
Quick Check:
Adding column = df['new_col'] = value [OK]
Hint: Use df['col_name'] = value to add columns fast [OK]
Common Mistakes:
Using non-existent methods like add_column or insert_column
Trying to use append which is for rows, not columns
Forgetting to use square brackets for column name
2. Which of the following is the correct syntax to remove a column named 'salary' from a pandas DataFrame df?
easy
A. df.drop('salary', axis=1)
B. df.remove('salary')
C. df.delete_column('salary')
D. df.drop_column('salary')
Solution
Step 1: Recall pandas method to remove columns
The pandas method to remove columns is drop() with axis=1 to specify columns.
Step 2: Use correct syntax to drop 'salary' column
Using df.drop('salary', axis=1) removes the 'salary' column from the DataFrame.
Final Answer:
df.drop('salary', axis=1) -> Option A
Quick Check:
Remove column = df.drop('col', axis=1) [OK]
Hint: Use df.drop('col', axis=1) to remove columns [OK]
Common Mistakes:
Using methods like remove or delete_column which don't exist
Forgetting axis=1 to specify column removal
Using drop without parentheses or wrong parameters
3. Given the DataFrame df below:
name score
0 Amy 90
1 Bob 80
2 Cara 85
What will be the output of this code?
df['passed'] = df['score'] >= 85
print(df)
medium
A.
name score passed
0 Amy 90 False
1 Bob 80 True
2 Cara 85 False
B.
name score passed
0 Amy 90 True
1 Bob 80 False
2 Cara 85 True
C.
name score
0 Amy 90
1 Bob 80
2 Cara 85
D.
name score passed
0 Amy 90 90
1 Bob 80 80
2 Cara 85 85
Solution
Step 1: Understand the condition applied to 'score'
The expression df['score'] >= 85 creates a boolean series: True where score is 85 or more, False otherwise.
Step 2: Assign boolean series to new column 'passed'
Adding df['passed'] = ... adds this boolean series as a new column.
Final Answer:
DataFrame with 'passed' column showing True for scores >= 85 -> Option B
Quick Check:
Boolean condition adds True/False column [OK]
Hint: Compare column with condition to add True/False column [OK]
Common Mistakes:
Expecting numeric values instead of booleans in new column
Not using >= operator correctly
Printing df before adding the new column
4. What is wrong with this code snippet to remove the column 'height' from DataFrame df?
df.drop('height')
medium
A. Missing axis=1 to specify column removal
B. The column name should be in a list like ['height']
C. The method drop does not exist in pandas
D. You must assign the result back to df like df = df.drop('height')
Solution
Step 1: Check the drop method parameters
By default, drop() removes rows. To remove columns, you must specify axis=1.
Step 2: Identify the missing axis parameter
The code misses axis=1, so it tries to remove a row named 'height', causing an error if no such row exists.
Final Answer:
Missing axis=1 to specify column removal -> Option A
Quick Check:
drop columns = drop('col', axis=1) [OK]
Hint: Always add axis=1 to drop columns, not rows [OK]
Common Mistakes:
Forgetting axis=1 causes wrong row removal or error
Thinking drop modifies df inplace without assignment
Using wrong data type for column name
5. You have a DataFrame df with columns ['A', 'B', 'C']. You want to create a new column 'D' which is the sum of 'A' and 'B', then remove column 'C'. Which code correctly does this in one step?