选择包含pandas中关键字的列名

时间:2018-05-19 07:57:23

标签: python string pandas dataframe series

我有这样的数据名称

d = {'col1': ['a', '2/1'], 'col2': ['b', 'c']}
df = pd.DataFrame(data=d)

我想知道哪些列包含键'/' 因为在'col1'列中,第一行包含键'/',我希望函数可以返回'col1'。

1 个答案:

答案 0 :(得分:0)

您可以将列表理解与pd.Series.str.contains一起使用。

res = [col for col in df.select_dtypes(include=[object]) if
       df[col].str.contains(r'/').any()]

print(res)  # ['col1']

在此示例中,我明确地隔离了object类型的列,因为数字/日期/等系列将超出您的测试范围。