簡體   English   中英

python數據框,獲取事件開始和結束的列表

[英]python dataframe, get list of start and end of events

我有一個數據框和一列具有整數值(在我的情況下為0和1)。 索引是時間。 當“區域”以開始和結束時,我需要一個列表。 我可以用diff來做,然后循環。

例:

import pandas as pd
df = pd.DataFrame(index = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
df['test'] = pd.DataFrame([0, 1, 1, 1, 0, 0, 1, 1, 1, 0], index = df.index)

methodOfLooking = ((2,4),(7,9)) # something like this should be the result

有什么有效的方法來獲得結果的想法嗎?

您可以使用diffzip來獲取開始和結束索引:

ix = df.test.diff().fillna(0)

In [74]: zip(df.index[ix==1],df.index[ix==-1]-1)
Out[74]: [(2, 4), (7, 9)]

暫無
暫無

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

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