问题描述
blah dateuno dateduo
a 29/06/2020 13:27 29/06/2020 17:44
b 19/05/2020 11:15 19/05/2020 19:25
c 8/06/2020 11:50 8/06/2020 19:51
d 9/06/2020 11:37 9/06/2020 19:38
e 20/07/2020 11:44 20/07/2020 19:47
f 21/07/2020 11:02 21/07/2020 19:08
g 23/07/2020 11:01 23/07/2020 19:05
我该如何将这些日期时间转换为戊二烯时间,如此处https://www.timeanddate.com/time/zone/usa/pennsylvania
贯穿此数据框的整个列?
解决方法
从样本的格式来看,您需要首先使用dayfirst=True
和utc=True
组成to_datetime
,以正确地描述输入。然后可以tz_convert
到适当的时区。例如:
df['dateuno'] = pd.to_datetime(df['dateuno'],dayfirst=True,utc=True)
df['dateduo'] = pd.to_datetime(df['dateduo'],utc=True)
df['dateuno'] = df['dateuno'].dt.tz_convert('US/Eastern')
df['dateduo'] = df['dateduo'].dt.tz_convert('US/Eastern')
# df
# blah dateuno dateduo
# 0 a 2020-06-29 09:27:00-04:00 2020-06-29 13:44:00-04:00
# 1 b 2020-05-19 07:15:00-04:00 2020-05-19 15:25:00-04:00
# 2 c 2020-06-08 07:50:00-04:00 2020-06-08 15:51:00-04:00
# 3 d 2020-06-09 07:37:00-04:00 2020-06-09 15:38:00-04:00
# 4 e 2020-07-20 07:44:00-04:00 2020-07-20 15:47:00-04:00
# 5 f 2020-07-21 07:02:00-04:00 2020-07-21 15:08:00-04:00
# 6 g 2020-07-23 07:01:00-04:00 2020-07-23 15:05:00-04:00