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

如何使用np.where()修改pandas DataFrame中符合指定条件的字段值

实现方案

首先导入依赖库:

import pandas as pd
import numpy as np

如果还没有构造DataFrame,可以用下面的示例代码构造测试数据,已经有对应df的话直接跳过这步:

df = pd.DataFrame({
    'Policy_id': ['A', 'B', 'A', 'C'],
    'Value': ['xyz', 'abc', 'pqr', 'lmn']
})

核心逻辑,用np.where完成条件判断和赋值:

# 先确保Value字段是字符串类型,避免非字符串类型拼接报错
df['Value'] = df['Value'].astype(str)
# 条件判断后赋值
df['Value'] = np.where(df['Policy_id'] == 'A', df['Value'] + '*', df['Value'])

执行后打印df即可得到你需要的结果:

Policy_id Value
0         A  xyz*
1         B   abc
2         A  pqr*
3         C   lmn

逻辑说明

np.where的参数规则为np.where(判断条件, 条件成立时的返回值, 条件不成立时的返回值),上述代码中:

  • 判断条件为Policy_id等于A
  • 条件成立时,将原Value值末尾拼接*返回
  • 条件不成立时,直接返回原Value值

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 01:45:04