You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Pandas计算同事件双时间序列的时间延迟差值

可行,以下是具体实现方案:

核心逻辑

两个序列记录同一事件,数值特征一致,因此可以通过匹配对应事件的时间点来计算序列间的延迟差。

步骤1:提取事件时间点

首先从两个DataFrame中提取事件发生的关键时间点(比如z值发生突变的时刻,可根据实际事件特征调整判断条件):

# 示例:提取z从0变为非0的事件起始时间
df1_events = df1[df1['z'].diff() > 0].index
df2_events = df2[df2['z'].diff() > 0].index

步骤2:匹配对应事件

根据事件数量一致性选择匹配方式:

  • 事件数量一致:直接按顺序匹配
    matched = pd.DataFrame({'t1': df1_events, 't2': df2_events})
    
  • 事件数量有差异:用最近邻匹配找最接近的时间点
    import numpy as np
    
    matched_t2 = []
    for t in df1_events:
        closest_idx = np.argmin(np.abs(df2_events - t))
        matched_t2.append(df2_events[closest_idx])
    matched = pd.DataFrame({'t1': df1_events, 't2': matched_t2})
    

步骤3:计算时间差值

直接计算匹配后时间点的差值,可转换为所需时间单位(如秒):

matched['time_delay'] = (matched['t2'] - matched['t1']).dt.total_seconds()

步骤4:校验结果

通过绘制time_delay的分布或时序图,排查异常匹配值,确保结果符合预期。


内容的提问来源于stack exchange,提问作者pasq

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 15:14:57