我有一个熊猫DataFrame的能源价格在一个国家的天数,在能源购买的价格取决于能源的报价,即如果有一个低报价价格将增加,反之亦然。为了避免能源股票市场的崩溃,政府定义了一些称为激活价格的值,这些值是根据国家过去几天生产的能源的平均值计算出来的,如果能源股票市场的价格超过了这个激活价格,那么购买能源的价格就是所谓的短缺价格,这意味着出价真的很低。我需要创建一个pandas列,其中包含出售能源的真实价格,这意味着检查能源的能源股票市场价格是否高于激活价格,以将价格设置为短缺价格,或者如果价格低于激活价格,则实际价格将是能源股票市场。pandas数据帧如下所示:
Fecha Precio máximo de Bolsa ($/kWh) Precio de escasez ($/kWh) Precio marginal de escasez ($/kWh) Precio de escasez de activación ($/kWh)
2020-01-01 406.73 551.24 627.21 627.21
2020-01-02 397.90 551.24 627.21 627.21
2020-01-03 285.31 551.24 627.21 627.21
2020-01-04 255.36 551.24 627.21 627.21
2020-01-05 305.12 551.24 627.21 627.21
发布于 2021-10-06 22:01:00
df['real_price'] = df['stock_price'].where(df['stock_price'] <= activation_price, shortage_price)
这会在条件为True
的情况下保留原始值,当条件为False
时,它会将该值设置为最后一个参数。
https://stackoverflow.com/questions/69473069
复制相似问题