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

如何根据另一列正值筛选DataFrame行并将目标列转为列表

实现方法

直接使用pandas原生的布尔索引即可完成需求,不需要额外编写循环逻辑。

首先构造和描述一致的测试DataFrame:

import pandas as pd

df = pd.DataFrame({
    'Word': ['First', 'Second', 'Third', 'Fourth'],
    'Value': [2, 15, -5, 10],
    'Another Column': [1, 2, 30, 22]
})

执行筛选+提取列表的核心代码:

target_list = df.loc[df['Value'] > 0, 'Word'].tolist()

执行后target_list的值就是期望的['First', 'Second', 'Fourth']。

逻辑说明

  • df['Value'] > 0会逐行判断Value列的数值是否为正,返回由True/False组成的布尔序列,作为行筛选的依据
  • df.loc[筛选条件, 列名]是pandas标准的按标签筛选语法,会直接返回符合条件的行对应的Word列值组成的Series对象
  • 末尾的.tolist()方法会把pandas的Series对象转换为原生Python列表

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 05:15:31