如何使用 pandas series.last() 方法获取时间序列数据的最终行?
pandasserver side programmingprogramming更新于 2025/5/20 22:52:17
pandas series.last() 方法用于根据日期偏移返回最终周期。通过应用此 series.last() 方法,我们可以获取时间序列对象的最终周期。最后一种方法与 pandas series.first() 方法非常相似,在这里我们可以获取最终周期而不是初始周期。
series.last() 方法有一个名为 offset 的参数,用于提及偏移数据的长度以选择给定限制内的行。
last() 方法将返回一个带有结果行的现在 Series 对象,如果输入系列对象的索引没有 DatetimeIndex,它将引发 TypeError。
示例 1
在下面的例子中,一个系列"s"是使用 pandas DateTime 索引创建的,索引中应包含与索引对应的月份日期名称。
# 导入包
import pandas as pd
# 创建日期
dates = pd.date_range('2021-02-01', periods=10, freq='20D')
# 创建带有日期索引的 pandas Series
s = pd.Series(dates.strftime('%B___%A'), index= dates)
print (s)
# 使用 last 方法获取行
result = s.last('1M')
print('Result:')
print(result)
解释
在这里,我们应用了 last() 方法偏移"1M"以获取一个月内的最终行。
输出
输出如下所示 −
2021-02-01 February___Monday 2021-02-21 February___Sunday 2021-03-13 March___Saturday 2021-04-02 April___Friday 2021-04-22 April___Thursday 2021-05-12 May___Wednesday 2021-06-01 June___Tuesday 2021-06-21 June___Monday 2021-07-11 July___Sunday 2021-07-31 July___Saturday Freq: 20D, dtype: object Result: 2021-07-11 July___Sunday 2021-07-31 July___Saturday Freq: 20D, dtype: object
2021-07-11 和 2021-07-31 这两个实例是一个月期限内的最后一个月。我们可以在上面的输出块中看到初始系列对象以及最终系列对象。
示例 2
以同样的方式,我们创建了一个 pandas 系列对象,其 pandas DateTime 索引的频率为 2 天和 15 小时。
# 导入包
import pandas as pd
# 创建日期
dates = pd.date_range('2021-03-10', periods=10, freq='2D15H')
# 创建带有日期索引的 pandas 系列
s = pd.Series(dates.strftime('%A_%b_%d'), index= dates)
print (s)
# 使用 last 方法获取行
result = s.last('1W')
print('Result:')
print(result)
解释
在这里,我们通过指定距上一个方法一周的偏移量"1W"来检索行。
输出
输出如下 −
2021-03-10 00:00:00 Wednesday_Mar_10 2021-03-12 15:00:00 Friday_Mar_12 2021-03-15 06:00:00 Monday_Mar_15 2021-03-17 21:00:00 Wednesday_Mar_17 2021-03-20 12:00:00 Saturday_Mar_20 2021-03-23 03:00:00 Tuesday_Mar_23 2021-03-25 18:00:00 Thursday_Mar_25 2021-03-28 09:00:00 Sunday_Mar_28 2021-03-31 00:00:00 Wednesday_Mar_31 2021-04-02 15:00:00 Friday_Apr_02 Freq: 63H, dtype: object Result: 2021-03-31 00:00:00 Wednesday_Mar_31 2021-04-02 15:00:00 Friday_Apr_02 Freq: 63H, dtype: object
最后一个方法成功返回了一个包含 2 个实例的系列对象。这两行包含一周内的索引。
相关文章
打印
下一节:如何用另一个系列对象对pandas系列对象进行向下取整除? ❯❮ 上一节:如何使用 pandas series.last_valid_index() 方法从序列对象中检索最后一个有效索引?

