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

如何将DataFrame列原地转换为Pandas Timestamps类型?

解决方案

你不需要专门找针对pd.Timestamp的特殊转换方法,pandas 本身的 datetime 类型和pd.Timestamp是原生配套的:

  • 列层面以datetime64[ns](numpy 提供的底层存储格式)存储,保证向量化操作的性能
  • 你访问列中任意单个值时,返回的对象默认就是pd.Timestamp类型,完全符合你的使用需求

最优原地转换实现

针对你给出的2022-06-03T00:00:00.000Z格式(带Z后缀的UTC标准时间字符串),直接用pd.to_datetime()转换即可,加上utc=True参数可以正确识别时区,避免解析警告:

# 将your_column替换为你实际的列名
df['your_column'] = pd.to_datetime(df['your_column'], utc=True)

转换后可以验证取值类型:

# 取列中第一个值查看类型
type(df['your_column'].iloc[0])
# 输出结果为 pandas._libs.tslibs.timestamps.Timestamp

补充:转换后列的dtype会显示为datetime64[ns, UTC],这是pandas 时间类型的正常存储形式,所有pd.Timestamp支持的方法、属性都可以正常在列上向量化调用,不需要额外处理。

非必要不推荐的写法

如果你一定要显式将每个元素逐个转为pd.Timestamp,可以用apply实现,但该写法是逐行循环执行,数据量超过10万行时性能会远差于上面的向量化写法:

df['your_column'] = df['your_column'].apply(pd.Timestamp)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 06:12:13