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

如何检查Pandas DataFrame两列间是否存在指定数字并替换值、删除行

解决方案

先准备好数据:

import pandas as pd

number_to_check = 17
df = pd.DataFrame({
    'min': [1, 6, 13, 29],
    'max': [3, 9, 19, 46]
})

按以下步骤处理即可实现需求:

  • 定位包含目标数字的行,获取其索引:
target_idx = df[(df['min'] <= number_to_check) & (df['max'] >= number_to_check)].index[0]
  • 将该行的max值替换为目标数字:
df.loc[target_idx, 'max'] = number_to_check
  • 截断DataFrame,只保留目标行及之前的所有行:
df = df.iloc[:target_idx+1]

最终得到的结果如下:

min  max
0    1    3
1    6    9
2   13   17

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 10:09:35