Home > Blockchain >  How to drop columns which contains specific characters except one column?
How to drop columns which contains specific characters except one column?

Time:10-01

Pandas dataframe is having 5 columns which contains 'verifier' in it. I want to drop all those columns which contained 'verified in it except the column named 'verified_90'(Pandas dataframe). I am trying following code but it is removing all columns which contains that specific word.

Column names: verified_30 verified_60 verified_90 verified_365 logo.verified. verified.at etc

''''

df = df[df.columns.drop(list(df.filter(regex='Test')))]

''''

CodePudding user response:

You might be able to use a regex approach here:

df = df[df.columns.drop(list(df.filter(regex='^(?!verified_90$).*verified.*$')))]

CodePudding user response:

Filter columns with not verified OR with verified_90 in DataFrame.loc, here : means select all rows and columns by mask:

df.loc[:, ~df.columns.str.contains('verified') | (df.columns == 'verified_90')]
  • Related