This code creates a table with quantity, price, and discount columns. It calculates total price by multiplying quantity and price. Then it subtracts discount to get the final price.
Pandas
import pandas as pd
data = {
'quantity': [2, 5, 3],
'price': [10, 7, 12],
'discount': [1, 0, 2]
}
df = pd.DataFrame(data)
# Calculate total price without discount
df['total_price'] = df['quantity'] * df['price']
# Calculate final price after discount
df['final_price'] = df['total_price'] - df['discount']
print(df)
OutputSuccess
Important Notes
If columns have missing values, arithmetic operations may result in NaN.
You can chain operations, like (df['a'] + df['b']) * df['c'].
Summary
Arithmetic operations on columns help create new data from existing columns.
Use +, -, *, / operators directly on pandas columns.
Always check data types to avoid errors.
Practice
(1/5)
1. What does the expression df['total'] = df['price'] + df['tax'] do in pandas?
easy
A. Multiplies the 'price' and 'tax' columns and stores in 'total'.
B. Deletes the 'price' and 'tax' columns from the DataFrame.
C. Filters rows where 'price' plus 'tax' is greater than zero.
D. Creates a new column 'total' by adding 'price' and 'tax' columns element-wise.
Solution
Step 1: Understand the operation on columns
The expression adds values from 'price' and 'tax' columns for each row.
Step 2: Assign result to new column
The sum is stored in a new column named 'total' in the DataFrame.
Final Answer:
Creates a new column 'total' by adding 'price' and 'tax' columns element-wise. -> Option D
Quick Check:
Adding columns creates new column with sums [OK]
Hint: Adding columns creates a new column with their sums [OK]
Common Mistakes:
Thinking it multiplies instead of adds
Assuming it deletes columns
Confusing assignment with filtering
2. Which of the following is the correct syntax to subtract column 'B' from column 'A' in a pandas DataFrame df and store the result in a new column 'C'?
easy
A. df['C'] = df['A'] - df['B']
B. df['C'] = df['A'] + df['B']
C. df['C'] = df['A'] * df['B']
D. df['C'] = df['A'] / df['B']
Solution
Step 1: Identify the subtraction operation
We want to subtract column 'B' from 'A', so the operator is '-'.
Step 2: Assign the result to new column 'C'
Use df['C'] = df['A'] - df['B'] to store the difference.
Final Answer:
df['C'] = df['A'] - df['B'] -> Option A
Quick Check:
Subtraction uses '-' operator between columns [OK]
Hint: Use '-' operator between columns to subtract [OK]
The output shows the values [6, 20] for the two rows.
Final Answer:
[6, 20] -> Option A
Quick Check:
Element-wise multiplication = [6, 20] [OK]
Hint: Multiply columns element-wise to get new column values [OK]
Common Mistakes:
Adding instead of multiplying
Printing wrong column
Confusing list output format
4. What is wrong with this code snippet?
df['D'] = df['A'] + '5'
Assuming 'A' is a numeric column.
medium
A. It will create a new column 'D' with all values as '5'.
B. It will add 5 to each value in column 'A' correctly.
C. It will raise a TypeError because you cannot add a string to a numeric column.
D. It will concatenate the string '5' to each numeric value in 'A'.
Solution
Step 1: Check data types involved in addition
Column 'A' is numeric, but '5' is a string, so adding them causes a type mismatch.
Step 2: Understand pandas behavior on mixed types
Pandas cannot add string to numeric directly, so it raises a TypeError.
Final Answer:
It will raise a TypeError because you cannot add a string to a numeric column. -> Option C
Quick Check:
Adding string to number causes TypeError [OK]
Hint: Check data types before arithmetic to avoid errors [OK]
Common Mistakes:
Assuming string '5' is converted automatically
Expecting concatenation with numbers
Ignoring error messages
5. You have a DataFrame df with columns 'cost' and 'discount'. You want to create a new column 'final_price' that subtracts the discount from cost and then applies a 10% tax on the result. Which code correctly does this?
hard
A. df['final_price'] = df['cost'] * 1.10 - df['discount']
B. df['final_price'] = (df['cost'] - df['discount']) * 1.10
C. df['final_price'] = df['cost'] - (df['discount'] * 1.10)
D. df['final_price'] = df['cost'] - df['discount'] * 1.10
Solution
Step 1: Subtract discount from cost
Calculate the price after discount: df['cost'] - df['discount'].
Step 2: Apply 10% tax on discounted price
Multiply the result by 1.10 to add 10% tax.
Step 3: Assign to 'final_price'
Store the final value in the new column 'final_price'.
Final Answer:
df['final_price'] = (df['cost'] - df['discount']) * 1.10 -> Option B
Quick Check:
Subtract then multiply for tax = correct formula [OK]
Hint: Use parentheses to control order: subtract first, then multiply [OK]
Common Mistakes:
Missing parentheses causing wrong order
Multiplying discount instead of discounted price
Applying tax before subtracting discount
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.