pandas.Timestamp.tz_localize#
- Timestamp.tz_localize(tz, ambiguous='raise', nonexistent='raise')#
将时间戳本地化为一个时区。
将朴素的时间戳转换为本地时区,或从带时区的时间戳中移除时区。
- 参数:
- tzstr, zoneinfo.ZoneInfo, pytz.timezone, dateutil.tz.tzfile 或 None
时间戳将被转换到的时间区域。None 将移除时区,保留本地时间。
- 歧义bool, ‘NaT’, 默认 ‘raise’
当由于夏令时(DST)时钟回拨时,可能会出现不明确的时间。例如在中欧时间(UTC+01),当从03:00 DST变为02:00非DST时,本地时间02:30:00在UTC时间00:30:00和01:30:00都会出现。在这种情况下,`ambiguous`参数决定了如何处理不明确的时间。
行为如下:
bool 包含标志以确定时间是否为夏令时(请注意,此标志仅适用于模糊的秋季夏令时日期)。
‘NaT’ 将返回一个不明确时间的 NaT。
‘raise’ 将引发一个模糊时间的 ValueError。
- nonexistent‘shift_forward’, ‘shift_backward’, ‘NaT’, timedelta, 默认 ‘raise’
在一个特定时区中,由于夏令时导致时钟向前移动,不存在的时间在这个时区中是不存在的。
行为如下:
‘shift_forward’ 会将不存在的时间向前移动到最近的现有时间。
‘shift_backward’ 会将不存在的时间向后移动到最接近的现有时间。
‘NaT’ 将在不存在时间的地方返回 NaT。
timedelta 对象会将不存在的时间按 timedelta 进行调整。
‘raise’ 如果存在不存在的时间,将引发 ValueError。
- 返回:
- 本地化时间戳
- 引发:
- TypeError
如果时间戳是时区感知的并且 tz 不是 None。
参见
Timestamp.tzinfo
返回 Timestamp 的时区信息。
Timestamp.tz_convert
将时区感知的 Timestamp 转换为另一个时区。
DatetimeIndex.tz_localize
将 DatetimeIndex 本地化为特定时区。
datetime.datetime.astimezone
将一个 datetime 对象转换为另一个时区。
例子
创建一个简单的时间戳对象:
>>> ts = pd.Timestamp('2020-03-14T15:32:52.192548651') >>> ts Timestamp('2020-03-14 15:32:52.192548651')
添加 ‘Europe/Stockholm’ 作为时区:
>>> ts.tz_localize(tz='Europe/Stockholm') Timestamp('2020-03-14 15:32:52.192548651+0100', tz='Europe/Stockholm')
类似于
pd.NaT
:>>> pd.NaT.tz_localize() NaT