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

如何将pandas含PDT/PST时区的日期时间列转换为UTC时区

解决方案

核心思路

  • 直接用pandas内置的to_datetime()方法自动识别字符串中的PDT/PST时区标记,生成带时区的datetime对象
  • 调用tz_convert('UTC')统一转换为UTC时区
  • 若不需要保留时区信息,可追加tz_localize(None)输出无时区的UTC时间

完整代码示例

import pandas as pd

# 构造示例数据
df = pd.DataFrame({
    'PDT/PST': [
        '2021-10-29 00:18:38 PDT',
        '2021-10-29 01:08:19 PDT',
        '2021-11-08 19:43:58 PST',
        '2021-11-08 19:56:01 PST'
    ]
})

# 核心转换逻辑,一行代码完成
df['UTC时间'] = pd.to_datetime(df['PDT/PST']).dt.tz_convert('UTC').dt.tz_localize(None)

# 如果需要对齐你示例中截断到分钟的效果,可追加.floor('min'):
# df['UTC时间'] = pd.to_datetime(df['PDT/PST']).dt.tz_convert('UTC').dt.floor('min').dt.tz_localize(None)

print(df)

输出结果

PDT/PST               UTC时间

0 2021-10-29 00:18:38 PDT 2021-10-29 07:18:38
1 2021-10-29 01:08:19 PDT 2021-10-29 08:08:19
2 2021-11-08 19:43:58 PST 2021-11-09 03:43:58
3 2021-11-08 19:56:01 PST 2021-11-09 03:56:01

注意事项

  • 如果解析时报错,可显式指定格式参数提升兼容性:pd.to_datetime(df['PDT/PST'], format='%Y-%m-%d %H:%M:%S %Z')
  • 若需要保留UTC时区标记,去掉.dt.tz_localize(None)即可

内容的提问来源于stack exchange,提问作者Salvin D'souza

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 11:36:05