本地化pandas datetime索引时出现不存在的entTimeError

2024-09-26 22:55:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用dataframe.index = dataframe.index.tz_localize('Iran')来本地化我的Pandas dataframe datetime索引。问题是Django上升了一个NonExistentTimeError。在

Djangosetting.py时区设置为我的本地时区。TIME_ZONE = 'Iran'

数据帧:

2014-08-11 12:00:00+00:00  3076.366
2014-08-11 11:45:00+00:00  3076.367
2014-08-11 11:30:00+00:00  3076.385
2014-08-11 11:15:00+00:00  3076.417
2014-08-11 11:00:00+00:00  3076.466
2014-08-11 10:45:00+00:00  3076.532
2014-08-11 10:30:00+00:00  3076.611
2014-08-11 10:15:00+00:00  3076.702
2014-08-11 10:00:00+00:00  3076.802
2014-08-11 09:45:00+00:00  3076.910

In [112]:dataframe.index.tzinfo
In [113]:<StaticTzInfo 'GMT'>

[10行x 1列]


Tags: 数据djangoinpyzonedataframepandasdatetime
1条回答
网友
1楼 · 发布于 2024-09-26 22:55:26

当您试图本地化指定时区中不存在的datetime时,异常NonExistentTimeError从{a1}引发。在

如果您想知道时间是如何“不存在”的,请考虑许多时区的本地时间受daylight saving time的影响。它偶尔也会受到地方政府的改变的影响。在

在您的特定案例中,您显示的所有值都是在2014年8月11日。伊朗的夏时制倒计时过渡要到2014年9月21日,as shown here。{cd3>就可以理解你的值了。我只能得出结论,你没有显示导致错误的实际数据。请检查您的数据。在

另外,您应该使用完整的时区名称,即'Asia/Tehran'。虽然'Iran'现在可以工作,但它只是一个向后兼容链接,您应该改用规范的区域名称。另请参见this list on Wikipedia。在

相关问题 更多 >

    热门问题