1 回答

TA贡献1998条经验 获得超6个赞
让我们试试这个:
df = df.set_index(0)
g = df[1].lt(-22).mul(1).diff().bfill().ne(0).cumsum()
df.groupby(g).apply(lambda x: x.resample('5T', kind='period').mean().reset_index()
if (x.iloc[0] < -22).any() else
x.resample('30T', kind='period').mean().reset_index())\
.reset_index(drop=True)
输出:
0 1
0 2018-03-20 08:02 -21.431450
1 2018-03-20 08:21 -22.026737
2 2018-03-20 08:22 -21.544189
3 2018-03-24 13:33 -22.294612
4 2018-03-24 13:38 -22.226108
5 2018-03-24 13:43 -22.236649
6 2018-03-24 13:47 -21.938244
7 2018-03-24 13:48 -22.180993
8 2018-03-24 13:51 -21.968956
9 2018-03-24 13:56 -22.244743
10 2018-03-24 14:01 -22.006955
添加回答
举报