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

如何在Pandas DataFrame中自动获取指定列满足数值条件的行号

Pandas筛选指定条件行并获取行号

先构造你提供的示例DataFrame:

import pandas as pd

df = pd.DataFrame({
    'one': [1, 2, 1, 10, 2, 0, -10],
    'two': [3, 4, 3, 3, 4, 3, 3],
    'three': [4, 6, 4, 4, 5, 4, 4]
})

1. 筛选one列数值大于9的行号

通过布尔索引过滤DataFrame,直接提取符合条件的默认索引(从0开始):

# 获取默认索引的行号列表
rows_gt_9 = df[df['one'] > 9].index.tolist()
print(rows_gt_9)  # 输出: [3]

如果需要对应示例中从1开始的行号(即第4行),可以对索引做加1转换:

rows_gt_9_1based = [idx + 1 for idx in rows_gt_9]
print(rows_gt_9_1based)  # 输出: [4]

2. 筛选one列绝对值大于9的行号

利用abs()方法计算列的绝对值后,再进行布尔过滤:

# 获取默认索引的行号列表
rows_abs_gt_9 = df[df['one'].abs() > 9].index.tolist()
print(rows_abs_gt_9)  # 输出: [3, 6]

同样转换为从1开始的行号:

rows_abs_gt_9_1based = [idx + 1 for idx in rows_abs_gt_9]
print(rows_abs_gt_9_1based)  # 输出: [4, 7]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 21:10:28