5I有一个数据帧,如下所示:
名称 | 站点 | 时间|
---|---|---|
手册 | BCN | 2022年10月3日下午11:23:13|
手册 | BCN | 2022年3月10日下午11:38:47|
自动 | 马德里 | 2022年3月10日下午11:40:32 |
手册 | BCN | 2022年3月10日下午11:39:47|
手册 | BCN | 2022年11月3日上午12:44:47
IIUC,尝试:
df["Time"] = pd.to_datetime(df["Time"])
df = df.sort_values("Time", ignore_index=True)
output = (df.groupby(["Name", "Site"])["Time"].apply(lambda x: x.diff()
.dt
.total_seconds()
.div(60)
.fillna(0)
.le(20)
.sum()
)
)
>>> output
Name Site
Automatic Madrid 1
Manual BCN 3
Name: Time, dtype: int64