Pandas 如何使用series.last()方法获取时间序列数据的最终行

Pandas 如何使用series.last()方法获取时间序列数据的最终行

pandas series.last()方法用于根据日期偏移返回最终周期。通过应用该series.last()方法,我们可以获取时间序列对象的最终周期。该方法与pandas series.first()方法非常相似,只是这里我们可以获取最终周期而不是初始周期。

series.last()方法具有一个称为offset的参数,用于指定要在给定限制内选择行的偏移数据的长度。

last()方法将返回一个新的Series对象,其中包含结果行,并且如果输入系列对象的索引没有DatetimeIndex,则会引发TypeError异常。

示例1

在下面的示例中,使用pandas的DateTime索引以相应的月份名称作为索引创建了一个系列”s”。

# importing packages
import pandas as pd

# creating dates
dates = pd.date_range('2021-02-01', periods=10, freq='20D')

#creating pandas Series with date index
s = pd.Series(dates.strftime('%B___%A'), index= dates)
print (s)

# get the rows by using last method
result = s.last('1M')
print('Result:')
print(result)

解释

在这里,我们使用offset为“1M”的last()方法来获取一个月内的最后几行。

输出

输出如下:

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 DateTime索引创建了一个频率为2天和15小时的pandas序列对象。

# importing packages
import pandas as pd

# creating dates
dates = pd.date_range('2021-03-10', periods=10, freq='2D15H')

#creating pandas Series with date index
s = pd.Series(dates.strftime('%A_%b_%d'), index= dates)
print (s)

# get the rows by using last method
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个实例的系列对象。而这2行数据的索引是一周内的。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程

Pandas 精选笔记