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

在Pandas中计算时间列与上一行的秒级时间差

解决Pandas计算行间时间差(秒为单位)的问题

要实现需求,只需三步操作:

  1. 将字符串格式的'time'列转换为datetime类型
    原始列是m/d/yyyy h:mm:ss格式的字符串,必须先转为Pandas的datetime类型才能进行时间计算:

    import pandas as pd
    
    # 假设你的DataFrame名为df
    df['time'] = pd.to_datetime(df['time'], format='%m/%d/%Y %H:%M:%S')
    
  2. 计算行与上一行的时间差并转为秒
    使用diff()方法计算相邻行的时间差,再通过dt.total_seconds()将Timedelta类型转换为总秒数:

    df['SEC'] = df['time'].diff().dt.total_seconds()
    
  3. 处理第一行的空值(可选)
    第一行没有上一行数据,计算结果会是NaN,如果要和示例一样显示为空字符串,可填充空值:

    df['SEC'] = df['SEC'].fillna('')
    

最终得到的结果如下:

timeSEC
4/18/2023 2:43:00
4/18/2023 3:13:001800
4/18/2023 3:35:531373
4/18/2023 3:36:0310

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 14:22:39