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

如何用Python将DataFrame中指定列特定值替换为另一列对应值

解决DataFrame中替换Buy_Entry列值的问题

没问题,这事儿用pandas的loc方法就能轻松实现,我给你具体的步骤和代码:

核心代码实现

假设你的DataFrame名称为df,可以按以下步骤操作:

  1. 替换"Buy Entry"为对应Open列的值
    用loc精准定位Buy_Entry列中值为"Buy Entry"的行,然后将这些行的Buy_Entry值替换为同一行的Open列数值:

    df.loc[df['Buy_Entry'] == 'Buy Entry', 'Buy_Entry'] = df.loc[df['Buy_Entry'] == 'Buy Entry', 'Open']
    
  2. (可选)统一列数据类型
    因为替换后Buy_Entry列可能同时存在数值和字符串(如果之前你把np.nan换成了0的话),建议将整个列转换为数值类型,避免后续计算出问题:

    df['Buy_Entry'] = df['Buy_Entry'].astype(float)
    

效果示例

拿你提供的样例数据来看:

原数据行:
2020-09-15 17.200001 Buy Entry np.nan
2020-09-16 16.100000 Buy Entry np.nan

替换并转换类型后会变成:

2020-09-15 17.200001 17.200001 0
2020-09-16 16.100000 16.100000 0

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 11:03:14