博客
关于我
python pandas TimeStamps到夏令时的本地时间字符串
阅读量:796 次
发布时间:2023-03-06

本文共 1227 字,大约阅读时间需要 4 分钟。

Pandas时间戳转换本地时间的方法

在处理时间数据时,Pandas的时间戳通常以UTC(协调世界时)存储。这意味着如果你需要将其转换为本地时间,需要额外的处理步骤。以下是将UTC时间戳转换为本地时间的详细方法。


1. 转换UTC时间为本地时间

Pandas的Timestamp对象支持时区转换。你可以使用tz_convert方法,将UTC时间转换为目标时区的本地时间。例如,以下代码将UTC时间转换为美国纽约时区(America/New_York):

import pandas as pdfrom datetime import datetimeimport pytz# 创建一个UTC的时间戳utc_time = pd.Timestamp('2020-03-19 12:00:00')# 将UTC时间转换为美国纽约时区的本地时间local_time = utc_time.tz_convert('America/New_York')

2. 将本地时间转换为字符串

在完成时区转换后,可以使用strftime方法将本地时间格式化为字符串。以下示例展示了如何将时间转换为YYYY-MM-DD HH:mm:ss ZZ格式:

local_string = local_time.strftime('%Y-%m-%d %H:%M:%S %Z%z')print(local_string)  # 输出:2020-03-19 18:00:00 EDT-0500

3. 测试多个时区

为了验证转换的正确性,你可以创建多个UTC时间戳,并将其转换为不同的时区。以下代码展示了如何将UTC时间转换为伦敦时间(Europe/London):

utc_times = [pd.Timestamp('2020-11-01 12:00:00'), pd.Timestamp('2020-03-19 12:00:00'), pd.Timestamp('2019-10-30 12:00:00')]for utc_time in utc_times:    local_time = utc_time.tz_convert('Europe/London')    local_string = local_time.strftime('%Y-%m-%d %H:%M:%S %Z%z')    print(f'UTC Time: {utc_time}, Local Time: {local_time}, Local String: {local_string}')

4. 应用场景

在人工智能和机器学习项目中,这种时间转换技术非常有用。例如,你可以将一个城市的天气数据转换为Pandas时间戳,然后进行特征工程和模型训练。通过这种方法,你可以更方便地分析和预测时间相关的数据。


通过以上方法,你可以轻松地将Pandas的UTC时间戳转换为本地时间,并将其格式化为所需的字符串表示。

转载地址:http://mlafk.baihongyu.com/

你可能感兴趣的文章