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

如何在Pandas中将毫秒级时间戳序列转换为年月格式?

批量转换毫秒时间戳为「年月」格式

你的时间戳是毫秒级整数(比如1570406400000),用Pandas的内置方法就能高效批量处理,比循环调用date.fromtimestamp()方便得多:

核心实现方法

直接用pd.to_datetime()把整列转成时间格式,再提取年月:

import pandas as pd

# 将毫秒时间戳列转换为datetime类型(unit='ms'指定输入为毫秒级)
df['latestCertificationDate'] = pd.to_datetime(df['latestCertificationDate'], unit='ms')
# 生成「YYYY-MM」格式的年月列
df['cert_year_month'] = df['latestCertificationDate'].dt.strftime('%Y-%m')
# 如果需要中文格式「YYYY年MM月」,修改格式化字符串即可
df['cert_year_month_cn'] = df['latestCertificationDate'].dt.strftime('%Y年%m月')

不修改原列的写法

如果不想改动原有时间戳列,可以直接链式操作:

df['cert_year_month'] = pd.to_datetime(df['latestCertificationDate'], unit='ms').dt.strftime('%Y-%m')

补充说明

你用date.fromtimestamp()能得到正确结果,是因为手动把毫秒转成了秒(比如1570406400000 ÷ 1000 = 1570406400),而pd.to_datetime()通过unit='ms'参数可以直接识别毫秒级时间戳,无需手动换算,批量处理效率更高。

测试单个值验证:

pd.to_datetime(1570406400000, unit='ms')
# 输出 Timestamp('2019-10-07 00:00:00'),正好对应你提到的2019年10月

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 04:48:16