pandas.Timestamp.ceil#
- Timestamp.ceil(freq, ambiguous='raise', nonexistent='raise')#
返回一个新的时间戳,该时间戳与此解析相同。
- 参数
- freq应力
指示上限分辨率的频率字符串。
- ambiguousBool或{‘RAISE’,‘NAT’},默认为‘RAISE’
其行为如下:
Bool包含用于确定时间是否为DST的标志(请注意,此标志仅适用于不明确的秋季DST日期)。
“NaT”将在不明确的时间返回NAT。
“Raise”将在不明确的时间引发AmbiguousTimeError。
- nonexistent{‘RAISE’,‘SHIFT_FORWARD’,‘SHIFT_BACKED,’NAT‘,TimeDelta},默认’RAISE‘
在时钟由于DST而向前移动的特定时区中不存在不存在的时间。
‘Shift_Forward’会将不存在的时间向前移动到最接近的现有时间。
‘Shift_Backup’会将不存在的时间向后移动到最接近的现有时间。
“NaT”将返回不存在时间的NAT。
时间增量对象将按时间增量移动不存在的时间。
如果存在不存在的时间,“Raise”将引发非ExistentTimeError。
- 加薪
- 如果无法转换频率,则返回ValueError。
注意事项
如果时间戳有时区,天花板将相对于当地(墙)时间并重新本地化到同一时区。当天花板接近夏令时时,使用
nonexistent
和ambiguous
以控制重新本地化行为。示例
创建时间戳对象:
>>> ts = pd.Timestamp('2020-03-14T15:32:52.192548651')
时间戳可以使用多个频率单位来设置上限:
>>> ts.ceil(freq='H') # hour Timestamp('2020-03-14 16:00:00')
>>> ts.ceil(freq='T') # minute Timestamp('2020-03-14 15:33:00')
>>> ts.ceil(freq='S') # seconds Timestamp('2020-03-14 15:32:53')
>>> ts.ceil(freq='U') # microseconds Timestamp('2020-03-14 15:32:52.192549')
freq
也可以是单个单位的倍数,如‘5T’(即5分钟):>>> ts.ceil(freq='5T') Timestamp('2020-03-14 15:35:00')
或多个单位的组合,如‘1H30T’(即1小时30分钟):
>>> ts.ceil(freq='1H30T') Timestamp('2020-03-14 16:30:00')
类似于
pd.NaT
:>>> pd.NaT.ceil() NaT
在接近夏令时转换时,使用
ambiguous
或nonexistent
以控制应如何重新本地化时间戳。>>> ts_tz = pd.Timestamp("2021-10-31 01:30:00").tz_localize("Europe/Amsterdam")
>>> ts_tz.ceil("H", ambiguous=False) Timestamp('2021-10-31 02:00:00+0100', tz='Europe/Amsterdam')
>>> ts_tz.ceil("H", ambiguous=True) Timestamp('2021-10-31 02:00:00+0200', tz='Europe/Amsterdam')