首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Pandas -如何根据列之间的逻辑创建新列

Pandas -如何根据列之间的逻辑创建新列
EN

Stack Overflow用户
提问于 2021-10-06 21:50:33
回答 1查看 21关注 0票数 0

我有一个熊猫DataFrame的能源价格在一个国家的天数,在能源购买的价格取决于能源的报价,即如果有一个低报价价格将增加,反之亦然。为了避免能源股票市场的崩溃,政府定义了一些称为激活价格的值,这些值是根据国家过去几天生产的能源的平均值计算出来的,如果能源股票市场的价格超过了这个激活价格,那么购买能源的价格就是所谓的短缺价格,这意味着出价真的很低。我需要创建一个pandas列,其中包含出售能源的真实价格,这意味着检查能源的能源股票市场价格是否高于激活价格,以将价格设置为短缺价格,或者如果价格低于激活价格,则实际价格将是能源股票市场。pandas数据帧如下所示:

代码语言:javascript
运行
复制
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
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-06 22:01:00

查看Pandas' Series.Where

代码语言:javascript
运行
复制
df['real_price'] = df['stock_price'].where(df['stock_price'] <= activation_price, shortage_price)

这会在条件为True的情况下保留原始值,当条件为False时,它会将该值设置为最后一个参数。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69473069

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档