我正在使用包含本地(智利)日期和时间的 pandas 数据框,例如:
当地时间 |
---|
2023年2月9日 23:33 |
2023年2月9日 23:39 |
2023年3月9日 1:00 |
2023年3月9日 1:08 |
我曾经通过对local_timepd.Timedelta(4, "h")
列应用批量时移 ( )将这些日期和时间转换为 UTC ,但现在我想考虑夏令时的变化。
tz_location
在转换为 UTC 之前,我开始使用以下命令指定时区tz_convert
:
import pandas as pd
from datetime import datetime
df = pd.read_csv("Example_dataset.csv")
pd.to_datetime(pd.to_datetime(df['local_time']).apply(lambda x: datetime.strftime(x, '%d-%m-%Y %H:%M:%S'))).dt.tz_localize('America/Santiago').dt.tz_convert('UTC')
这似乎适用于此处提供的示例数据集:2023 年 9 月 2 日的数据偏移了 4 小时,而 9 月 3 日的数据偏移了 3 小时。
0 2023-09-03 03:33:00+00:00
1 2023-09-03 03:39:00+00:00
2 2023-09-03 04:00:00+00:00
3 2023-09-03 04:08:00+00:00
这是正确的继续方法还是我在这里遗漏了任何东西?
您需要本地化然后转换: