I have a list of dataframes and each dataframe has columns that contains columns names such as "Unnamed 1", "Unnamed 2" etc
I want to drop all columns that contain the name "Unnamed" from each dataframe in the list of dataframes.
df_all = [df1,df2,df3] df_all2 =  for df in df_all: df = df[df.columns.drop(list(df.filter(regex='Unnamed')))] df_all2 = df.append df_all = df_all2
This works, however, is there a more succinct method?
There is a better way by using regex column
filter with negative lookahead
df_all = [df.filter(regex=r'^(?!Unnamed)') for df in df_all]
for df in df_all: df.drop(df.columns[df.columns.str.contains('Unnamed:')], 1, inplace=True)