Python Pandas - 如何按小时频率舍入 TimeDeltaIndex


要按照小时频率舍入 TimeDeltaIndex,请使用 TimeDeltaIndex.round() 方法。对于小时频率,请使用 freq 参数,其值设为 ‘H’

首先,导入必需的库 −

import pandas as pd

创建一个 TimeDeltaIndex 对象。我们使用 'data' 参数设置基于 timedelta 的数据 −

tdIndex = pd.TimedeltaIndex(data =['10 day 5h 2 min 3us 10ns', '+22:39:19.999999', '2 day 4h 03:08:02.000045', '+21:15:45.999999'])

显示 TimedeltaIndex −

print("TimedeltaIndex...\n", tdIndex)

使用小时频率对 TimeDeltaIndex 日期执行舍入运算。对于小时频率,我们使用了 'H' −

print("\nPerforming round operation with hourly frequency...\n", tdIndex.round(freq='H'))

示例

以下是代码 −

Open Compiler
import pandas as pd # Create a TimeDeltaIndex object # We have set the timedelta-like data using the 'data' parameter tdIndex = pd.TimedeltaIndex(data =['10 day 5h 2 min 3us 10ns', '+22:39:19.999999', '2 day 4h 03:08:02.000045', '+21:15:45.999999']) # display TimedeltaIndex print("TimedeltaIndex...\n", tdIndex) # Return a dataframe of the components of TimeDeltas print("\nThe Dataframe of the components of TimeDeltas...\n", tdIndex.components) # Round operation on TimeDeltaIndex date with hourly frequency # For hourly frequency, we have used 'H' print("\nPerforming round operation with hourly frequency...\n", tdIndex.round(freq='H'))

示例输出

将生成以下代码 −

TimedeltaIndex...
TimedeltaIndex(['10 days 05:02:00.000003010', '0 days 22:39:19.999999',
'2 days 07:08:02.000045', '0 days 21:15:45.999999'],
dtype='timedelta64[ns]', freq=None)

The Dataframe of the components of TimeDeltas...
   days  hours minutes seconds milliseconds microseconds nanoseconds
0   10     5      2      0         0           3            10
1    0    22     39     19       999         999             0
2    2     7      8      2         0          45             0
3    0    21     15     45       999         999             0

Performing round operation with hourly frequency...
TimedeltaIndex(['10 days 05:00:00', '0 days 23:00:00', '2 days 07:00:00',
'0 days 21:00:00'],
dtype='timedelta64[ns]', freq=None)

更新于: 2021-10-20

114 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始
广告