【发布时间】:2019-11-22 01:56:16
【问题描述】:
我有带有字符串时间戳的 DataFrame 列,我想将其转换为没有时区的本地日期时间。
df = {'id' : [1, 2, 3],
'timestamp' : ['2019-07-01T21:30:20Z', '2019-07-02T21:30:20Z', '2019-07-03T21:30:20Z']}
df = pd.DataFrame(df, columns = ['id','timestamp'])
我的代码:
df['timestamp'] = (pd.DatetimeIndex(pd.to_datetime(df['timestamp'], format="%Y-%m-%dT%H:%M:%SZ",
errors='ignore')).tz_localize('UTC').tz_convert('Europe/Prague'))
这适用于上面的例子,但不适用于下面的例子。 OutOfBoundsDatetime:越界纳秒时间戳
df = {'id' : [1, 2, 3],
'timestamp' : ['2019-07-01T21:30:20Z', '2999-12-31T21:30:20Z', '9999-12-30T21:30:20Z']}
2999-12-31T21:30:20Z 或 9999-12-30T21:30:20Z 有问题。我该如何解决?
【问题讨论】:
标签: python python-3.x pandas timestamp localtime