如何使用Python生成指定日期范围的分钟级时间序列DataFrame
生成指定范围分钟级时间序列的解决方案
以下两种方案均可快速生成超大量级的分钟级时间数据,完全突破Excel的行数限制,操作流程简单。
方案1:Python实现(灵活度高,支持自定义导出格式)
只需用到Python第三方库pandas,几行代码即可完成生成、导出全流程:
import pandas as pd # 按需修改起止日期即可 start_time = "2020-12-05 00:00:00" end_time = "2021-05-31 23:59:00" # 生成1分钟粒度的完整时间序列 time_series = pd.date_range(start=start_time, end=end_time, freq="1min") # 按要求拆分日期、时间两列 result_df = pd.DataFrame({ "date": time_series.strftime("%Y-%m-%d"), "time": time_series.strftime("%H:%M:%S") }) # 导出为CSV文件,分隔符可根据需求调整 result_df.to_csv("分钟级时间序列.csv", index=False, sep="|", encoding="utf-8")
运行前如果未安装pandas,先执行命令pip install pandas即可。2020-12-05到2021-05-31的全量数据约26万条,全程运行耗时不超过3秒。
方案2:PowerShell实现(无需安装额外软件)
如果不想配置Python环境,Windows系统可直接运行PowerShell脚本生成:
# 定义起止时间 $start = Get-Date "2020-12-05 00:00:00" $end = Get-Date "2021-05-31 23:59:00" $export_path = "分钟级时间序列.csv" # 写入表头 "date|time" | Out-File $export_path -Encoding utf8 # 循环生成每分钟数据 while ($start -le $end) { $current_line = $start.ToString("yyyy-MM-dd") + "|" + $start.ToString("HH:mm:ss") $current_line | Out-File $export_path -Encoding utf8 -Append $start = $start.AddMinutes(1) }
输出效果验证
最终生成的文件格式和需求完全匹配,示例如下:
date | time ---------- | ----- 2020-12-05 | 00:00:00 2020-12-05 | 00:01:00 2020-12-05 | 00:02:00 ... 2021-05-31 | 23:58:00 2021-05-31 | 23:59:00
内容的提问来源于stack exchange,提问作者doubleD
相关产品推荐
相关产品推荐

