【发布时间】:2018-10-13 00:22:08
【问题描述】:
我有一个名为“hello.xlsx”的 excel 文件。有一列时间戳有很多行(目前超过 80,000 行)。该文件基本上是这样的:
04/19/2018 01:37:33
04/19/2018 01:37:54
04/19/2018 01:37:57
04/19/2018 01:37:59
04/19/2018 01:38:05
04/19/2018 01:38:10
04/19/2018 01:38:38
04/19/2018 01:39:29
04/19/2018 01:39:32
04/19/2018 01:39:44
04/19/2018 01:39:51
等等……
这些时间戳采用 UTC 时间,我需要将它们转换为美国太平洋时间 (UTC, -7)。
我是python的初学者,实际上我不知道如何进行这种转换。我在网上问了一个有用的答案。代码如下所示:
df = pd.read_excel('hello.xlsx', header=None)
local_tz = pytz.timezone('US/Pacific')
df[0] = df[0].apply(lambda x: x.replace(tzinfo=pytz.utc).astimezone(local_tz).replace(tzinfo=None))
df.to_excel('out.xlsx', index=False, header=False)
但是,我运行后出现错误:
TypeError: replace() takes no keyword arguments
我在网上搜索了一个解决方案,但未能正确解决。我希望有人可以帮助弄清楚。新方法也受到欢迎。谢谢~:)
【问题讨论】:
标签: python excel timezone timestamp