You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用for循环从多份CSV文件提取指定关键词行并生成新文件

批量筛选CSV文件并生成新文件(基于Python)

完全可以用for循环实现,下面是具体的代码和步骤,新手也能跟着操作:

准备工作

如果还没安装pandas库,打开命令行输入以下命令安装:
pip install pandas

完整代码

import pandas as pd
import glob

# 获取当前目录下所有CSV文件的路径
csv_files = glob.glob("*.csv")

# 遍历每个CSV文件
for file in csv_files:
    # 读取CSV文件为表格格式
    df = pd.read_csv(file)
    # 筛选"tissue type"列包含"liver"或"lung"的行(忽略大小写,可根据需求去掉case=False)
    filtered_df = df[df["tissue type"].str.contains("liver|lung", case=False, na=False)]
    # 生成新文件名,避免覆盖原文件
    new_file_name = f"filtered_{file}"
    # 保存筛选后的内容为新CSV,不保留自动索引
    filtered_df.to_csv(new_file_name, index=False)

代码细节说明

  • glob.glob("*.csv"):抓取当前文件夹内所有后缀为.csv的文件路径;如果CSV文件在其他文件夹,把"*.csv"改成对应路径,比如"your_folder/*.csv"
  • df["tissue type"].str.contains(...):精准匹配列名为"tissue type"的内容,liver|lung表示匹配任意一个关键词,case=False兼容大小写差异(比如匹配Liver或LUNG),na=False跳过空值行
  • f"filtered_{file}":给新文件加前缀标识,你也可以改成f"{file.split('.')[0]}_filtered.csv"这种后缀标识的格式
  • 确保所有CSV的列名确实是"tissue type"(大小写、空格完全一致),如果列名有差异,要对应修改代码里的列名字符串

内容的提问来源于stack exchange,提问作者Daisy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 16:35:20