0
点赞
收藏
分享

微信扫一扫

# yyds干货盘点 # 站不住就准备加仓,这个pandas语句该咋写?

大家好,我是皮皮。

一、前言

前几天在Python白银交流群【还有多远】问了一个​​Pandas​​处理的问题,这里拿出来给大家分享下。

# yyds干货盘点 # 站不住就准备加仓,这个pandas语句该咋写?_代码实现

看上去不太好理解,这里继续给个样式。

# yyds干货盘点 # 站不住就准备加仓,这个pandas语句该咋写?_Python_02

只有一个条件为真,​​i < 3300 and i+1 > 3300​​ 就为真,其余都为假 。

二、实现过程

这里【甯同学】给了一个代码,如下所示:

​df.open.rolling(2).agg(lambda x:x.iloc[0]<3300 and x.iloc[1]>3300 )​

# yyds干货盘点 # 站不住就准备加仓,这个pandas语句该咋写?_Python入门_03

简直太秀了,顺利地解决了粉丝的问题。

# yyds干货盘点 # 站不住就准备加仓,这个pandas语句该咋写?_Python_04

有的粉丝就郁闷了,为啥和粉丝要求的不一样呢?粉丝要求的是下图这样的。

# yyds干货盘点 # 站不住就准备加仓,这个pandas语句该咋写?_Python基础_05

不慌,只需要在代码后面加个​​map​​就搞定了,代码如下:

df.open.rolling(2).agg(lambda x:x.iloc[0]<3300 and x.iloc[1]>3300 ).map({1.0:True,0.0:False,np.nan:0.0})

# yyds干货盘点 # 站不住就准备加仓,这个pandas语句该咋写?_Python基础_06

三、总结

大家好,我是皮皮。这篇文章主要盘点了一个​​Pandas​​处理数据的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。

最后感谢粉丝【还有多远】提问,感谢【甯同学】给出的思路和代码解析,感谢【崔艳飞】、【论草莓如何成为冻干莓】、【空翼】等人参与学习交流。

举报

相关推荐

0 条评论