Pandas.tslib.normalize_date()时区是否有意识?

时间:2015-07-21 16:33:13

标签: python pandas timezone

我在夏令时标准化时间戳时发现以下行为改变了pandas 0.16.2的边界:

import pandas as pd
original_midnight = pd.Timestamp('20121104', tz='US/Eastern')
original_midday = pd.Timestamp('20121104T120000', tz='US/Eastern')

str(pd.tslib.normalize_date(original_midday))
`Out[10]:'2012-11-04 00:00:00-05:00'`

str(original_midnight)
`Out[12]:'2012-11-04 00:00:00-04:00'`

我认为规范化的时间戳应该与original_midnight具有相同的时区。

这是一个错误,还是我错过了什么?

1 个答案:

答案 0 :(得分:1)

implementation只会截断时间。它似乎根本没有操纵偏移,所以我会说没有,它不是时区意识。

另外,考虑到这种类型的操作(在许多语言中)倾向于掩盖这样一个事实:并非每个当地日午夜。例如,如果时区为'America/Sao_Paulo'(巴西),且日期为春季转发(例如2015-10-18),则跳过00:00到00:59的小时,意思是当天的开始时间是01:00。如果要将功能更新为可识别时区,则必须调整时间和偏移量。