Bird
Raised Fist0
Data Analysis Pythondata~5 mins

Adding and removing columns in Data Analysis Python - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
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)
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')
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
Which axis value is used to drop rows in pandas?
Aaxis=0
Baxis=1
Caxis=2
Daxis=-1
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)
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

      1. 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'].
      2. 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.
      3. Final Answer:

        df['age'] = 30 -> Option C
      4. 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

      1. Step 1: Recall pandas method to remove columns

        The pandas method to remove columns is drop() with axis=1 to specify columns.
      2. Step 2: Use correct syntax to drop 'salary' column

        Using df.drop('salary', axis=1) removes the 'salary' column from the DataFrame.
      3. Final Answer:

        df.drop('salary', axis=1) -> Option A
      4. 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

      1. 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.
      2. Step 2: Assign boolean series to new column 'passed'

        Adding df['passed'] = ... adds this boolean series as a new column.
      3. Final Answer:

        DataFrame with 'passed' column showing True for scores >= 85 -> Option B
      4. 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

      1. Step 1: Check the drop method parameters

        By default, drop() removes rows. To remove columns, you must specify axis=1.
      2. 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.
      3. Final Answer:

        Missing axis=1 to specify column removal -> Option A
      4. 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?
      hard
      A.
      df['D'] = df['A'] + df['B']
      df.remove('C')
      B.
      df['D'] = df['A'] + df['B']
      df.drop('C', axis=1, inplace=True)
      C.
      df['D'] = df['A'] + df['B']
      df = df.drop('C', axis=1)
      D.
      df = df.assign(D=df['A'] + df['B']).drop('C', axis=1)

      Solution

      1. Step 1: Create new column 'D' as sum of 'A' and 'B'

        Using assign() allows adding a new column in a chainable way without modifying df inplace.
      2. Step 2: Remove column 'C' using drop() chained after assign()

        Chaining drop('C', axis=1) removes column 'C' and returns the modified DataFrame.
      3. Step 3: Assign the result back to df

        Assigning the chained operations back to df updates the DataFrame correctly in one step.
      4. Final Answer:

        df = df.assign(D=df['A'] + df['B']).drop('C', axis=1) -> Option D
      5. Quick Check:

        Use assign + drop chained and assign back [OK]
      Hint: Chain assign and drop, then assign back to df [OK]
      Common Mistakes:
      • Using drop without axis=1 or inplace causing no change
      • Using non-existent remove method
      • Not assigning chained result back to df
      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