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

如何在Dataframe中按5分钟间隔生成指定起止时间的时间序列

5分钟间隔时间序列生成方案

核心实现逻辑

  • 先把输入的字符串格式的时间转换为可做算术运算的时间类型
  • 初始化当前时间为起始时间time1
  • 循环判断:只要当前时间小于等于结束时间time2,就输出当前时间,再给当前时间累加5分钟
  • 输出时将时间对象转换为标准时间格式字符串即可

Python实现(新手友好,无第三方依赖)

直接调用Python内置的datetime模块即可实现:

from datetime import datetime, timedelta

# 可自定义修改的参数
time1 = "09:30:59"
time2 = "15:15:59"
step = timedelta(minutes=5) # 时间间隔,要改其他间隔直接修改参数即可

# 时间格式声明,带日期的场景改为 "%Y-%m-%d %H:%M:%S" 即可
time_format = "%H:%M:%S"

# 字符串转时间对象
start = datetime.strptime(time1, time_format)
end = datetime.strptime(time2, time_format)

current = start
while current <= end:
    print(current.strftime(time_format))
    current += step

运行后输出结果完全匹配需求:从09:30:59开始,每次累加5分钟,最后输出15:15:59结束。


Shell 实现(适合Linux/Mac脚本场景)

调用系统自带的date命令即可实现:

#!/bin/bash
time1="09:30:59"
time2="15:15:59"
step=300 # 5分钟对应300秒

# 转时间戳做运算
current_ts=$(date -d "$time1" +%s)
end_ts=$(date -d "$time2" +%s)

while [ $current_ts -le $end_ts ]; do
    date -d @$current_ts +"%H:%M:%S"
    current_ts=$((current_ts + step))
done

注意事项

如果需要处理跨天的时间序列,只需要在输入的时间里加上日期部分,同时修改对应的时间解析格式即可,整体逻辑完全不需要调整。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 02:24:03