首页 > 解决方案 > 在完整数据框中查找 excat 字符串

问题描述

我正在数据框中搜索一个字符串,并想获取列标题列表,其中出现了这个 excat 字符串。

我的数据框是:

df
ColumnA ColumnB ColumnC
apple  app       appl
banana  app       banana

现在我想搜索:apple我应该回来:

ColumnA

如果我搜索banana我应该得到:

ColumnA
ColumnC

如何获取列标题,字符串在数据框内的位置?

标签: pythonregexpandasdataframe

解决方案


假设您正在寻找标题所暗示的字符串eq匹配项,您可以使用给定字符串检查是否相等,any检查哪些列包含至少一个匹配项并对数据框的列执行布尔索引:

df.columns[df.eq('apple').any(0)]
# Index(['ColumnA'], dtype='object')

df.columns[df.eq('banana').any(0)]
# Index(['ColumnA', 'ColumnC'], dtype='object')

推荐阅读