簡體   English   中英

用相同的鍵對熊貓系列中的連續元素進行分組

[英]Groupby consecutive elements in pandas series with same key

我在DataFrame中有一個Series,它僅包含0或1。我想獲取每個“ cluster”的長度為0的列表。這是一個玩具模型:

a=pd.DataFrame({'x':[1,1,0,0,1,0]})

我期望的是[2,1]

為此,我可以執行以下操作:

a[a['x']==0].index

然后使用groupby查找在SO上已經了解的連續索引。 順便說一句,有沒有更有效的方法呢?

您可以使用itertools.groupby獲得此結果。

from itertools import groupby

data = [1, 1, 0, 0, 1, 0]
grouper = (list(s) for _, s in groupby(data))
lengths = [len(s) for s in grouper if s[0] == 0]
print(lengths)

不知道pandas groupby是否編碼相同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM