我有一个dataframe
与每行包含事件,与Start
和End
datatime
。如何根据日期时间差异合并数据框中的组行?
import pandas as pd
import datetime
df = pd.DataFrame({ 'Value' : [1.,2.,3.],
'Start' : [datetime.datetime(2017,1,1,0,0,0),datetime.datetime(2017,1,1,0,1,0),datetime.datetime(2017,1,1,0,4,0)],
'End' : [datetime.datetime(2017,1,1,0,0,59),datetime.datetime(2017,1,1,0,5,0),datetime.datetime(2017,1,1,0,6,00)]},
index=[0,1,2])
df
Out[7]:
End Start Value
0 2017-01-01 00:00:59 2017-01-01 00:00:00 1.0
1 2017-01-01 00:05:00 2017-01-01 00:01:00 2.0
2 2017-01-01 00:07:00 2017-01-01 00:06:00 3.0
我想组连续的行,其中连续行的End
和Start
之间的差异大于一个给定的timedelta
小。 例如此处为5秒的timedelta我想组行索引0,1
并用timedelta 2分钟应该以行0,1,2
的溶液。将使用.shift()
与他们的移版本连续行比较得到,但是,我如果需要合并多于两行的组,则需要多次迭代比较。
由于我的DF非常大,这不是一个选项。
也许它只是我,但我不知道你的输出正在寻找 –
显示您的预期了把./_ \。 – Wen
对不起,这家伙迟到:(我正在添加所需的输出 – ErroriSalvo