Python Pandas - 从 TimeDeltaIndex 创建一个系列并设置结果系列的名称

使用to_series()方法从 Pandas 中的 TimeDeltaIndex 创建一个系列。该名称参数用来设置所产生的系列名称。

首先,导入所需的库 -

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 转换为 Series 并设置结果系列的名称。名称使用 'name' 参数设置 -

print("\nTimeDeltaIndex to series...\n", tdIndex.to_series(name="DateTime Data"))

示例

以下是代码 -

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)
# Return TimeDeltaIndex as object ndarray
print("\nReturn TimeDeltaIndex as object ndarray ofdatetime.datetimeobjects...\n",
tdIndex.to_pytimedelta())

# Convert TimeDeltaIndex to Series and set the name of the resulting series
# The name is set using the 'name' parameter
print("\nTimeDeltaIndex to series...\n", tdIndex.to_series(name="DateTime Data"))
输出结果

这将产生以下代码 -

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

Return TimeDeltaIndex as object ndarray ofdatetime.datetimeobjects...
[datetime.timedelta(days=10, seconds=18120, microseconds=3)
datetime.timedelta(seconds=81559, microseconds=999999)
datetime.timedelta(days=2, seconds=25682, microseconds=45)
datetime.timedelta(seconds=76545, microseconds=999999)]

TimeDeltaIndex to series...
10 days 05:02:00.000003010 10 days 05:02:00.000003010
0 days 22:39:19.999999 0 days 22:39:19.999999
2 days 07:08:02.000045 2 days 07:08:02.000045
0 days 21:15:45.999999 0 days 21:15:45.999999
Name: DateTime Data, dtype: timedelta64[ns]

猜你喜欢