Python Pandas – 获取Period的第二部分
在使用Python Pandas处理时间数据时,经常需要获取时间间隔的第二部分,例如获取一个datetime对象的小时、分钟或秒数等信息。本篇文章将介绍如何使用Python Pandas获取Period的第二部分信息。
更多Pandas相关文章,请阅读:Pandas 教程
获取Period的第二部分
我们可以使用
“`pandas.Series.dt“`对象获取Period的第二部分。以下是获取小时、分钟和秒数的示例代码:
import pandas as pd
# 创建一个Period对象
p = pd.Period('2021-01-01 12:34:56')
# 获取小时数
print(p.hour)
# 获取分钟数
print(p.minute)
# 获取秒数
print(p.second)
输出结果:
12
34
56
获取多个Period的第二部分
我们也可以使用
“`pandas.Series.dt“`对象获取多个Period的第二部分信息。以下是获取一组Period的小时、分钟和秒数的示例代码:
import pandas as pd
# 创建一组Period对象
periods = pd.period_range('2021-01-01 00:00:00', '2021-01-01 01:00:00', freq='15min')
# 获取每个Period的小时数
print(periods.hour)
# 获取每个Period的分钟数
print(periods.minute)
# 获取每个Period的秒数
print(periods.second)
输出结果:
Int64Index([0, 0, 0, 0, 1, 1, 1, 1], dtype='int64')
Int64Index([0, 15, 30, 45, 0, 15, 30, 45], dtype='int64')
Int64Index([0, 0, 0, 0, 0, 0, 0, 0], dtype='int64')
上述代码输出了三个
“`Int64Index“`,分别表示每个Period的小时数、分钟数和秒数。注意,由于Period的频率是15分钟,因此只有分钟数是4个取值(0、15、30、45),而小时数和秒数都是0。
获取Period的第二部分的字符串格式
如果我们需要获取Period的第二部分的字符串格式,可以使用
“`pandas.Series.dt.strftime()“`方法。以下是获取日期的字符串格式的示例代码:
import pandas as pd
# 创建一个Period对象
p = pd.Period('2021-01-01 12:34:56')
# 获取小时数的字符串格式
print(p.strftime('%H'))
# 获取分钟数的字符串格式
print(p.strftime('%M'))
# 获取秒数的字符串格式
print(p.strftime('%S'))
输出结果:
12
34
56
结论
Python Pandas提供了简单易用的方法来获取时间间隔的第二部分信息。通过
“`pandas.Series.dt“`对象获取Period的第二部分信息,可以轻松地处理时间数据。