gpt4 book ai didi

python-3.x - 日期时间、 Pandas 和时区问题 : AttributeError: 'datetime.timezone' object has no attribute '_utcoffset'

转载 作者:行者123 更新时间:2023-12-05 00:46:10 25 4
gpt4 key购买 nike

这是我正在尝试做的一个玩具示例:

import pandas as pd
import datetime
import matplotlib
matplotlib.use('agg') # noqa
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
from time import sleep

lst = []
for x in range(0, 10):
lst.append((datetime.datetime.now(datetime.timezone.utc), x))
sleep(1)

df = pd.DataFrame(lst, columns=['Timestamp', 'Pressure'])
df.plot(kind='line', x='Timestamp', y='Pressure')
formatter = mdates.DateFormatter('%m/%d %T %Z', tz=df.index.tz)
plt.gca().xaxis.set_major_formatter(formatter)
plt.savefig('output.png')

当我运行它时,我得到 AttributeError: 'datetime.timezone' object has no attribute '_utcoffset'
我究竟做错了什么?

最佳答案

主要是从@AndyHayden answer 中抓取的,但一种选择是将 datetime.datetime 转换为 str 并使用 pd.to_datetime 转换回“时区感知”时间戳

df = pd.DataFrame(lst, columns=['Timestamp', 'Pressure'])
df['Timestamp'] = pd.to_datetime(df.Timestamp.astype(str))
ax = df.plot(kind='line', x='Timestamp', y='Pressure')
plt.show()

df = df.set_index('Timestamp')

formatter = mdates.DateFormatter('%m/%d %T %Z', tz=df.index.tz)

ax.xaxis.set_major_formatter(formatter)

返回:

enter image description here

关于python-3.x - 日期时间、 Pandas 和时区问题 : AttributeError: 'datetime.timezone' object has no attribute '_utcoffset' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54825098/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com