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

如何基于多条件从DataFrame提取数据并生成可存储新DataFrame

基于条件筛选DataFrame并导出为CSV/Excel

需求

需要从DataFrame中筛选出包含OnlyFans相关内容或TOP 0.01%标识的数据,目前已通过循环打印符合条件的记录,希望生成可保存为CSV或Excel的新DataFrame。

解决方案

直接使用pandas的布尔索引进行筛选,比循环更高效简洁,步骤如下:

  1. 构建筛选条件
    针对需求中的匹配规则,用str.contains实现模糊匹配,通过case=False忽略大小写,na=False处理空值避免报错:

    # 逐个列构建匹配条件
    cond_desc = dataframe['Description'].str.contains('onlyfans', case=False, na=False)
    cond_name_onlyfans = dataframe['Display_Name'].str.contains('onlyfans', case=False, na=False)
    cond_name_top = dataframe['Display_Name'].str.contains('TOP 0.01%', case=False, na=False)
    cond_content_top = dataframe['Content'].str.contains('top 0.01%', case=False, na=False)
    
    # 合并条件:满足任一条件即保留
    filter_rule = cond_desc | cond_name_onlyfans | cond_name_top | cond_content_top
    
  2. 生成筛选后的新DataFrame

    filtered_df = dataframe[filter_rule]
    
  3. 导出为CSV或Excel

    # 保存为CSV(index=False不保留行索引)
    filtered_df.to_csv('filtered_result.csv', index=False, encoding='utf-8')
    
    # 保存为Excel(需先安装依赖:pip install openpyxl)
    filtered_df.to_excel('filtered_result.xlsx', index=False)
    

说明

  • 利用pandas向量化操作替代手动循环,在大数据量场景下效率提升明显。
  • 筛选后的filtered_df保留原DataFrame所有列信息,可直接用于后续分析或导出。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 19:33:36