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

Pandas如何根据多列间逻辑规则生成能源实际售价新列

能源实际售价计算实现方案

首先明确原数据字段和逻辑中概念的映射关系,避免匹配错误:

  • Fecha:日期
  • Precio máximo de Bolsa ($/kWh):对应逻辑中的能源股市价格
  • Precio de escasez ($/kWh):对应逻辑中的短缺价格
  • Precio de escasez de activación ($/kWh):对应逻辑中的激活价格

代码实现

方法1:使用numpy的where(推荐,写法更直观)

import numpy as np

# 新增实际售价列
df['实际售价($/kWh)'] = np.where(
    # 条件:股市价格高于激活价格
    df['Precio máximo de Bolsa ($/kWh)'] > df['Precio de escasez de activación ($/kWh)'],
    # 条件成立取短缺价格
    df['Precio de escasez ($/kWh)'],
    # 条件不成立取股市价格
    df['Precio máximo de Bolsa ($/kWh)']
)

方法2:使用pandas原生where(无需额外依赖)

df['实际售价($/kWh)'] = df['Precio de escasez ($/kWh)'].where(
    df['Precio máximo de Bolsa ($/kWh)'] > df['Precio de escasez de activación ($/kWh)'],
    df['Precio máximo de Bolsa ($/kWh)']
)

你提供的样例数据中所有能源股市价格均低于激活价格627.21$/kWh,因此样例数据生成的实际售价列数值会和能源股市价格列完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 09:54:02