Bird
Raised Fist0
Pandasdata~10 mins

Selecting columns by name in Pandas - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to select the column 'Age' from the DataFrame df.

Pandas
age_column = df[[1]]
Drag options to blanks, or click blank then click option'
A'age'
Bdf['Age']
CAge
D'Age'
Attempts:
3 left
💡 Hint
Common Mistakes
Forgetting to use quotes around the column name.
Using the variable name without quotes.
Trying to select the column without brackets.
2fill in blank
medium

Complete the code to select multiple columns 'Name' and 'Salary' from the DataFrame df.

Pandas
selected_columns = df[[1]]
Drag options to blanks, or click blank then click option'
A('Name', 'Salary')
B['Name', 'Salary']
C'Name', 'Salary'
D{'Name', 'Salary'}
Attempts:
3 left
💡 Hint
Common Mistakes
Using a tuple or set instead of a list.
Not using brackets around the list.
Passing column names as a single string.
3fill in blank
hard

Fix the error in the code to select the 'City' column from df.

Pandas
city = df.[1]
Drag options to blanks, or click blank then click option'
ACity
B'City'
Ccity
D['City']
Attempts:
3 left
💡 Hint
Common Mistakes
Using quotes inside dot notation.
Using brackets with dot notation.
Using lowercase when column name is capitalized.
4fill in blank
hard

Fill both blanks to select columns 'Height' and 'Weight' from df and assign to new_df.

Pandas
new_df = df[[1]]
print(new_df.columns[[2]])
Drag options to blanks, or click blank then click option'
A['Height', 'Weight']
B['Height', 'Weight', 'Age']
C0
D1
Attempts:
3 left
💡 Hint
Common Mistakes
Using a tuple or set instead of a list for columns.
Using wrong index to access columns.
Including extra columns in the list.
5fill in blank
hard

Fill all three blanks to create a dictionary with column names as keys and their data types as values.

Pandas
col_types = [1]: df[[2]].dtype for [3] in df.columns}
Drag options to blanks, or click blank then click option'
Acol
Dcolumn
Attempts:
3 left
💡 Hint
Common Mistakes
Using different variable names in different blanks.
Not using the variable to select the column.
Using df.columns directly as key.

Practice

(1/5)
1.

Which syntax correctly selects a single column named 'Age' from a pandas DataFrame df?

easy
A. df.Age[]
B. df['Age']
C. df[['Age']]
D. df('Age')

Solution

  1. Step 1: Understand single column selection syntax

    Using single brackets with the column name as a string selects one column and returns a Series.
  2. Step 2: Compare options

    df['Age'] is the correct syntax. Double brackets return a DataFrame, and other options are invalid syntax.
  3. Final Answer:

    df['Age'] -> Option B
  4. Quick Check:

    Single brackets select one column [OK]
Hint: Use single brackets for one column, double for many [OK]
Common Mistakes:
  • Using double brackets for single column returns DataFrame, not Series
  • Trying to use parentheses instead of brackets
  • Using dot notation with brackets incorrectly
2.

Which of the following is the correct syntax to select multiple columns 'Name' and 'Salary' from a DataFrame df?

easy
A. df[['Name', 'Salary']]
B. df['Name', 'Salary']
C. df['Name' & 'Salary']
D. df.Name, df.Salary

Solution

  1. Step 1: Recall syntax for selecting multiple columns

    Multiple columns must be passed as a list inside double brackets.
  2. Step 2: Evaluate options

    Only df[['Name', 'Salary']] correctly uses a list inside double brackets. Others are invalid or return separate Series.
  3. Final Answer:

    df[['Name', 'Salary']] -> Option A
  4. Quick Check:

    Double brackets + list select multiple columns [OK]
Hint: Use double brackets with list for multiple columns [OK]
Common Mistakes:
  • Using single brackets with multiple column names separated by comma
  • Using bitwise AND (&) instead of list
  • Trying to select columns separately without combining
3.

Given the DataFrame df below, what is the output of df[['City', 'Age']]?

import pandas as pd
data = {'Name': ['Alice', 'Bob'], 'Age': [25, 30], 'City': ['NY', 'LA']}
df = pd.DataFrame(data)
medium
A.
   City  Name
0    NY  Alice
1    LA    Bob
B.
   Name  Age
0  Alice   25
1    Bob   30
C.
   City  Age
0    NY   25
1    LA   30
D.
   Age  City
0   25    NY
1   30    LA

Solution

  1. Step 1: Understand the selection

    The code selects columns 'City' and 'Age' in that order from the DataFrame.
  2. Step 2: Check the output order and values

    The output DataFrame has columns 'City' then 'Age' with values from original data.
  3. Final Answer:

    City Age 0 NY 25 1 LA 30 -> Option C
  4. Quick Check:

    Selected columns match output order [OK]
Hint: Output columns appear in the order listed inside double brackets [OK]
Common Mistakes:
  • Mixing column order in output
  • Selecting wrong columns
  • Confusing Series output with DataFrame output
4.

What is wrong with this code to select columns 'A' and 'B' from DataFrame df?

df['A', 'B']
medium
A. It raises a KeyError because tuple ('A', 'B') is not a column
B. It returns a DataFrame with columns 'A' and 'B'
C. It returns a Series with combined values of 'A' and 'B'
D. It raises a SyntaxError due to wrong brackets

Solution

  1. Step 1: Analyze the indexing syntax

    Using single brackets with multiple comma-separated strings creates a tuple key, not a list.
  2. Step 2: Understand pandas column selection behavior

    Since ('A', 'B') is a tuple, pandas looks for a column with that exact tuple name, which does not exist, causing KeyError.
  3. Final Answer:

    It raises a KeyError because tuple ('A', 'B') is not a column -> Option A
  4. Quick Check:

    Single brackets with comma create tuple key, causing KeyError [OK]
Hint: Use double brackets with list for multiple columns to avoid KeyError [OK]
Common Mistakes:
  • Using single brackets with multiple column names separated by comma
  • Expecting a DataFrame but getting error
  • Confusing tuple with list in indexing
5.

You have a DataFrame df with columns 'Name', 'Age', 'Salary', and 'Department'. You want to create a new DataFrame with only 'Name' and 'Salary', but also want to rename 'Salary' to 'Income'. Which code correctly does this?

hard
A.
new_df = df[['Name', 'Salary']].rename(columns=['Name', 'Income'])
B.
new_df = df['Name', 'Salary'].rename(columns={'Salary': 'Income'})
C.
new_df = df[['Name', 'Salary']].rename({'Salary': 'Income'})
D.
new_df = df[['Name', 'Salary']].rename(columns={'Salary': 'Income'})

Solution

  1. Step 1: Select columns 'Name' and 'Salary'

    Use double brackets with a list: df[['Name', 'Salary']] to get a DataFrame with those columns.
  2. Step 2: Rename 'Salary' to 'Income'

    Use rename(columns={'Salary': 'Income'}) to rename the column correctly.
  3. Final Answer:

    new_df = df[['Name', 'Salary']].rename(columns={'Salary': 'Income'}) -> Option D
  4. Quick Check:

    Select columns then rename with columns dict [OK]
Hint: Select columns first, then rename with columns dict [OK]
Common Mistakes:
  • Using single brackets for multiple columns
  • Passing rename argument without 'columns=' keyword
  • Passing list instead of dict to rename
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard