[英]Count consecutive values within an array with multiple values numpy/pandas
[英]Identify groups of consecutive values within NumPy array
我有一個NumPy值數組,我需要識別數組中的連續值組。
我嘗試編寫一個“ for”循環來執行此操作,但是我遇到了很多問題。 因此,我在itertools中查看了groupby的文檔。 我以前從未使用過它,並且我對文檔感到有些困惑,所以我來了。
有人可以對使用groupby進行更“外行講話”的解釋嗎? 本質上,我不需要樣本代碼,而只是對文檔的更詳盡的解釋。
一個很好的答案是使用生成器對其進行分組(可能不是最快的方法)
def groupings(a):
g = []
for val in a:
if not g:
g.append(val)
elif abs(g[-1] - val) <= 1.00001:
g.append(val)
else:
yield g
g = []
print list(groupings(my_numpy_array))
我知道這不會給您一個通俗易懂的分組依據說明(符合某些條件的分組連續項目...對於這種類型的應用程序來說會有些痛苦)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.