【发布时间】:2018-09-02 04:12:18
【问题描述】:
我有一个包含很多行的数据框,我只是在寻找满足条件的行数。
数据sn-p:
mydf:
Date Time Open High Low Close
143 07:08:2015 14:55:00 300.10 300.45 300.10 300.45
144 07:08:2015 15:00:00 300.50 300.95 300.45 300.90
145 07:08:2015 15:05:00 300.90 301.20 300.75 300.90
146 07:08:2015 15:10:00 300.85 301.40 300.75 301.40
147 07:08:2015 15:15:00 301.40 301.60 301.20 301.55
148 07:08:2015 15:20:00 301.45 301.55 301.10 301.40
我当前的代码,首先将所需的列分成2个系列,然后计算最后6个元素的出现次数
openpr = mydf['Open']
closepr = mydf['Close'] # 2 Series, one for Open and One for Close data
differ = abs(closepr - openpr) #I have a series list with absolute Difference.
myarr = differ[142:].values == 0 # last X elements
sum(myarr) #Num of occurances with Zero Difference.
据我了解,有很多方法可以用最少的代码并直接使用 DF 本身来实现上述结果。
TIA
【问题讨论】:
-
使用
(df.Close - df.Open).eq(0).sum()?
标签: python pandas dataframe filter count