Python pandas.to_timedelta函数方法的使用

pandas.to_timedelta 是一个将数据转换为 Timedelta 类型的函数,通常用于处理时间差的计算。Timedelta 类型代表时间跨度,单位可以是天、小时、分钟、秒等。本文主要介绍一下Pandas中pandas.to_timedelta方法的使用。

pandas.to_timedelta(arg, unit='ns', box=True, errors='raise')                   [source]

将参数转换为timedelta

时间增量是时间上的绝对差异,以差异单位(例如 days, hours, minutes, seconds)表示。此方法将参数从公认的timedelta格式/值转换为Timedelta类型。

参数

arg : strtimedelta

类似listSeries

要转换为timedelta的数据。

unit : str,默认'ns'

表示arg的单位。可能的值:

(‘Y’, ‘M’, ‘W’, ‘D’, ‘days’, ‘day’,

‘hours’, hour’, ‘hr’, ‘h’, ‘m’, ‘minute’,

‘min’, ‘minutes’, ‘T’, ‘S’, ‘seconds’,

‘sec’, ‘second’, ‘ms’, ‘milliseconds’,

‘millisecond’, ‘milli’, ‘millis’, ‘L’, ‘us’,

‘microseconds’, ‘microsecond’, ‘micro’,

‘micros’, ‘U’, ‘ns’, ‘nanoseconds’, ‘nano’,

‘nanos’, ‘nanosecond’, ‘N’)

box : bool,默认为True

如果为True,则返回结果的Timedelta/TimedeltaIndex

如果为False,如果False返回一个numpy.timedelta64

dtype timedelta64[ns]值的numpy.darray

从0.25.0版开始不推荐使用:

Series.to_numpy()

Timedelta.to_timedelta64() 

分别获取值的ndarraynumpy.timedelta64

errors : {'ignore','raise','coerce'}

默认为'raise'

如果为 'raise',则无效的解析将引发异常。

如果为‘coerce’,则将无效解析设置为NaT。

如果为 'ignore',则无效的解析将返回输入。

返回值

timedelta64timedelta64numpy.array

如果解析成功,则返回输出类型。

例子

1)将字符串转换为 Timedelta 对象

import pandas as pd

# 将字符串转换为Timedelta
td = pd.to_timedelta('2 days 5 hours 10 minutes')
print(td)

2)将整数转换为指定单位的 Timedelta

import pandas as pd

# 将字符串转换为Timedelta
td = pd.to_timedelta(5, unit='days')
print(td)

3)将时间差字符串转换为 Timedelta,并处理错误

import pandas as pd

td = pd.to_timedelta(['1 days', '2 hours', 'invalid'], errors='coerce')
print(td)

4)将日期时间字符串转换为 Timedelta

import pandas as pd

td = pd.to_timedelta(['1 days', '2 days', '3 days'])
print(td)

5)返回 ndarray

import pandas as pd
import numpy as np

# 将数字数组转换为 `TimedeltaIndex`
td_index = pd.to_timedelta(np.arange(5), unit='s')
print(td_index)

# 将 `TimedeltaIndex` 转换为 `ndarray`
td_array = td_index.to_numpy()
print(td_array)

推荐阅读
cjavapy编程之路首页