pandas.Timestamp.round # 时间戳。round ( freq ,歧义= 'raise' ,不存在= 'raise' ) # 将时间戳舍入到指定的分辨率。 参数: 频率字符串指示舍入分辨率的频率字符串。 不明确的bool 或 {'raise', 'NaT'},默认 'raise'行为如下: bool 包含用于确定时间是否为夏令时的标志(请注意,此标志仅适用于不明确的秋季夏令时日期)。 'NaT' 将返回 NaT 一段不明确的时间。 'raise' 会在不明确的时间引发 AmbigouslyTimeError 。 不存在{'raise', 'shift_forward', 'shift_backward, 'NaT', timedelta}, 默认 'raise'不存在的时间不存在于因夏令时而时钟向前移动的特定时区中。 “shift_forward”会将不存在的时间向前移动到最接近的现有时间。 'shift_backward' 会将不存在的时间向后移动到最接近的现有时间。 'NaT' 将在不存在的时间处返回 NaT。 timedelta 对象会将不存在的时间移动 timedelta。 如果时间不存在,“raise”将引发 NonExistentTimeError。 返回: 一个新的时间戳四舍五入到给定的频率分辨率 加薪: 如果频率无法转换,则出现 ValueError 笔记 如果时间戳具有时区,则将相对于本地(“墙”)时间进行舍入,并重新本地化到同一时区。当接近夏令时时舍入时,使用nonexistent和ambiguous来控制重新定位行为。 例子 创建时间戳对象: >>> ts = pd.Timestamp('2020-03-14T15:32:52.192548651') 时间戳可以使用多个频率单位进行舍入: >>> ts.round(freq='h') # hour Timestamp('2020-03-14 16:00:00') >>> ts.round(freq='min') # minute Timestamp('2020-03-14 15:33:00') >>> ts.round(freq='s') # seconds Timestamp('2020-03-14 15:32:52') >>> ts.round(freq='ms') # milliseconds Timestamp('2020-03-14 15:32:52.193000') freq也可以是单个单位的倍数,例如“5min”(即 5 分钟): >>> ts.round(freq='5min') Timestamp('2020-03-14 15:35:00') 或多个单位的组合,例如“1h30min”(即 1 小时 30 分钟): >>> ts.round(freq='1h30min') Timestamp('2020-03-14 15:00:00') 类似pd.NaT: >>> pd.NaT.round() NaT 在夏令时转换附近舍入时,使用ambiguous或 nonexistent来控制时间戳应如何重新本地化。 >>> ts_tz = pd.Timestamp("2021-10-31 01:30:00").tz_localize("Europe/Amsterdam") >>> ts_tz.round("h", ambiguous=False) Timestamp('2021-10-31 02:00:00+0100', tz='Europe/Amsterdam') >>> ts_tz.round("h", ambiguous=True) Timestamp('2021-10-31 02:00:00+0200', tz='Europe/Amsterdam')