如果字符串在列名中,如何选择列



所以我有一个包含许多列的数据帧字典。我想选择所有的列有字符串'重要'在他们。因此,有些框架的列名可能是important_0或important_9_0。我如何选择它们并将它们放入它们自己的新字典中,其中包含每列所包含的所有值。

import pandas as pd
df = pd.DataFrame(columns=['a', 'b', 'important_c'])
selected_cols = [c for c in df.columns if c.startswith('important_')]
print(selected_cols)
# ['important_c']
dict_df = { x: pd.DataFrame(columns=['a', 'b', 'important_c']) for x in range(3) }
new_dict = { x: dict_df[x][[c for c in dict_df[x].columns if c.startswith('important_')]] for x in dict_df } 
important_columns = [x for x in df.columns if 'important' in x]
#changing your dataframe by remaining columns that you need
df = df[important_columns]

最新更新