在许多 dfs 中搜索列名

Search column names in many dfs

您好,我如何搜索多个 CSV 并获得列中包含 Apple 的文件名列表?我需要 Apple 的搜索有一个选项 (1) 搜索不区分大小写或区分大小写,以及 (2) 搜索整个单词,因此如果需要可以拒绝“appletree”。

有些 CSV 文件的列名称如下:“Apple Price”、“Apple Discount”、“apple”、“appletree”

我试过了

filenames = "C:\Documents\*.csv"
for file in glob.glob(filenames):
   df = pd.read_csv(file)
   if "Apple" in df.columns:
           print(file)

您可以遍历每个列名,看看 Apple 是否属于该列,如下所示:

filenames = "C:\Documents\*.csv"
for file in glob.glob(filenames):
   df = pd.read_csv(file)
   if any("Apple".lower() in col.lower().split() for col in df.columns):
           print(file)

这是一个班轮:

[file for file in glob.glob("C:\Documents\*.csv") if any('apple' in col.lower() for col in df.read_csv(file).columns)]