Drop columns whose name contains a specific string from pandas DataFrame

Drop columns whose name contains a specific string from pandas DataFrame

You can drop columns from a Pandas DataFrame whose names contain a specific string using various methods. Here's one approach using the DataFrame.drop() method with a list comprehension:

import pandas as pd # Sample DataFrame data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35], 'City_NY': ['New York', 'San Francisco', 'Los Angeles'], 'City_LA': ['Los Angeles', 'San Diego', 'San Francisco']} df = pd.DataFrame(data) # Specify the substring you want to search for in column names substring_to_remove = 'City' # Create a list of column names to drop columns_to_drop = [col for col in df.columns if substring_to_remove in col] # Drop the columns df.drop(columns=columns_to_drop, inplace=True) # Display the updated DataFrame print(df) 

In this example, we:

  1. Specify the substring_to_remove variable to contain the substring you want to search for in column names, in this case, 'City'.

  2. Use a list comprehension to create a list called columns_to_drop that contains the names of columns with the specified substring.

  3. Drop the columns specified in the columns_to_drop list using the DataFrame.drop() method with columns=columns_to_drop.

  4. Finally, display the updated DataFrame without the columns containing the specified substring.

The resulting DataFrame will have the specified columns removed. You can modify the substring_to_remove variable to match the specific substring you want to filter and remove.

Examples

  1. How to drop columns containing specific string in Pandas DataFrame?

    Description: This query seeks a method to drop columns from a Pandas DataFrame that contain a specific string in their column names.

    import pandas as pd # Assuming df is your DataFrame df.drop(df.columns[df.columns.str.contains('specific_string')], axis=1, inplace=True) 
  2. Drop columns with certain substring in Pandas DataFrame?

    Description: This query focuses on dropping columns from a Pandas DataFrame if their column names contain a specified substring.

    import pandas as pd # Assuming df is your DataFrame df.drop(columns=df.columns[df.columns.str.contains('substring_to_drop')], inplace=True) 
  3. How to remove columns with specific text in Pandas DataFrame?

    Description: This query addresses the need to remove columns from a Pandas DataFrame that contain specific text in their names.

    import pandas as pd # Assuming df is your DataFrame df = df.loc[:, ~df.columns.str.contains('specific_text')] 
  4. Drop columns containing certain pattern in Pandas DataFrame?

    Description: This query seeks to drop columns from a Pandas DataFrame based on a specific pattern or substring in their names.

    import pandas as pd # Assuming df is your DataFrame df = df.drop(df.filter(like='pattern_to_drop').columns, axis=1) 
  5. How to remove columns with specific prefix in Pandas DataFrame?

    Description: This query focuses on removing columns from a Pandas DataFrame that have a specific prefix in their column names.

    import pandas as pd # Assuming df is your DataFrame df = df[df.columns.drop(list(df.filter(regex='^prefix_to_drop')))] 
  6. Drop columns based on partial name match in Pandas DataFrame?

    Description: This query addresses the requirement to drop columns from a Pandas DataFrame based on partial matches in their column names.

    import pandas as pd # Assuming df is your DataFrame df = df[df.columns.drop(list(df.filter(like='partial_name_to_drop')))] 
  7. How to remove columns with specific suffix in Pandas DataFrame?

    Description: This query seeks a method to remove columns from a Pandas DataFrame that have a specific suffix in their names.

    import pandas as pd # Assuming df is your DataFrame df = df.loc[:, ~df.columns.str.endswith('suffix_to_drop')] 
  8. Drop columns with certain keyword in Pandas DataFrame?

    Description: This query focuses on dropping columns from a Pandas DataFrame that contain a specific keyword or term in their names.

    import pandas as pd # Assuming df is your DataFrame df = df.drop(columns=df.columns[df.columns.str.contains('keyword_to_drop')]) 
  9. How to remove columns with specific string in Pandas DataFrame by index?

    Description: This query addresses the need to remove columns from a Pandas DataFrame based on a specific string in their names using column indices.

    import pandas as pd # Assuming df is your DataFrame df.drop(df.columns[df.columns.str.contains('specific_string')], axis=1, inplace=True) 
  10. Drop columns containing certain phrase in Pandas DataFrame?

    Description: This query seeks to drop columns from a Pandas DataFrame that contain a specific phrase or expression in their names.

    import pandas as pd # Assuming df is your DataFrame df = df.loc[:, ~df.columns.str.contains('phrase_to_drop')] 

More Tags

querydsl spring-java-config time mat-table type-mismatch phpmailer parent-pom amazon-cloudfront preact rake

More Python Questions

More Livestock Calculators

More Auto Calculators

More Other animals Calculators

More Various Measurements Units Calculators