Python Pandas – 在TimeDeltaIndex对象上执行向上舍入操作,使其具有微秒频率
要在具有微秒频率的 TimeDeltaIndex 上执行 ceil 操作,请使用 TimeDeltaIndex.ceil() 方法。对于微秒频率,请设置参数 freq 的值为 ‘us’ 。
首先,导入所需的库−
import pandas as pd
创建 TimeDeltaIndex 对象。我们使用 ‘data’ 参数设置类似于 timedelta 的数据−
tdIndex = pd.TimedeltaIndex(data =['4 day 8h 20min 35us 45ns', '+17:42:19.999999',
'9 day 3h 08:16:02.000055', '+22:35:25.000075'])
显示 TimeDeltaIndex −
print("TimeDeltaIndex...\n", tdIndex)
对具有微秒频率的 TimeDeltaIndex 执行 ceil 操作。对于微秒频率,我们使用 ‘us’−
print("\n在微秒频率下执行向上舍入操作...\n",
tdIndex.ceil(freq='us'))
示例
以下是代码−
import pandas as pd
# 创建 TimeDeltaIndex 对象
# 我们使用 'data' 参数设置类似于 timedelta 的数据
tdIndex = pd.TimedeltaIndex(data =['4 day 8h 20min 35us 45ns', '+17:42:19.999999',
'9 day 3h 08:16:02.000055', '+22:35:25.000075'])
# 显示 TimeDeltaIndex
print("TimeDeltaIndex...\n", tdIndex)
# 返回一个时间组成部分的数据框
print("\nTimeDelta 组成部分的数据框...\n", tdIndex.components)
# 在具有微秒频率的 TimeDeltaIndex 上执行 ceil 操作
# 对于微秒频率,我们使用 'us'
print("\n在微秒频率下执行向上舍入操作...\n",
tdIndex.ceil(freq='us'))
输出
这将生成以下代码−
TimeDeltaIndex...
TimedeltaIndex(['4 days 08:20:00.000035045', '0 days 17:42:19.999999',
'9 days 11:16:02.000055', '0 days 22:35:25.000075'],
dtype='timedelta64[ns]', freq=None)
TimeDelta 组成部分的数据框...
days hours minutes seconds milliseconds microseconds nanoseconds
0 4 8 20 0 0 35 45
1 0 17 42 19 999 999 0
2 9 11 16 2 0 55 0
3 0 22 35 25 0 75 0
在微秒频率下执行向上舍入操作...
TimedeltaIndex(['4 days 08:20:00.000036', '0 days 17:42:19.999999',
'9 days 11:16:02.000055', '0 days 22:35:25.000075'],
dtype='timedelta64[ns]', freq=None)
极客教程