繁体   English   中英

如何使日期时间时区感知和转换时区

[英]How to make datetimes timezone aware and convert timezones

我有 3 个包含多列的数据框,其中 2 个的日期时间是 UTC,另一个是“欧洲/阿姆斯特丹”。 然而,他们仍然不知情。

如何使这些数据集时区感知,并将“欧洲/阿姆斯特丹”转换为 UTC?

日期时间在每个数据集的索引中。

如果您使用的是 pandas 数据帧和 Python 3,您可以这样做:

import pandas as pd

values = {'dates':  ['20190902101010','20190913202020','20190921010101'],
          'status': ['Opened','Opened','Closed']
          }

df = pd.DataFrame(values, columns = ['dates','status'])

df['dates_datetime'] = pd.to_datetime(df['dates'], format='%Y%m%d%H%M%S')

df['dates_datetime_tz'] = df.dates_datetime.dt.tz_localize('UTC').dt.tz_convert('Asia/Kolkata')

print (df)
print (df.dtypes)

结果:

            dates  status      dates_datetime         dates_datetime_tz
0  20190902101010  Opened 2019-09-02 10:10:10 2019-09-02 15:40:10+05:30
1  20190913202020  Opened 2019-09-13 20:20:20 2019-09-14 01:50:20+05:30
2  20190921010101  Closed 2019-09-21 01:01:01 2019-09-21 06:31:01+05:30

我已经从 UTC 转换为特定的 TZ,你可以选择任何你需要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM