我需要计算至少有 4 个连续值符合 Pandas 标准的实例。下面的代码给了我一个 Int64Index:
IN: vals = chunk[chunk[col] > ninetieth].index
OUT: Int64Index([427, 429, 430, 431, 436, 470, 471, 472, 473, 478, 518, 519, 520,
521, 522, 565, 566, 567, 568, 569],
dtype='int64')
我可以通过这种方式得到我想要的:
count = 0
i = 0
while i < range(len(vals)):
try:
if vals[i] + 3 == vals[i + 3]:
count += 1
i += 3
else: i += 1
except: break
但是必须有一种更简单、不那么可怕的方法,对吗?
ETA:在进一步澄清之后,每次运行至少 4 个连续值时,计数应该增加,并且在出现间隙之前不会再次增加。
相关分类