Pandas DataFrame.rolling()函数

Minahil Noor 2023年1月30日 2021年2月28日
  1. pandas.DataFrame.rolling() 的语法
  2. 示例代码:使用 DataFrame.rolling() 方法查找窗口大小为 2 的滚动总和
  3. 示例代码:使用 DataFrame.rolling()方法查找窗口大小为 3 的滚动平均值
Pandas DataFrame.rolling()函数

Python PandasDataFrame.rolling() 函数为数学运算提供了一个滚动窗口。

pandas.DataFrame.rolling() 的语法

DataFrame.rolling(window,
                  min_periods=None,
                  center=False,
                  win_type=None,
                  on=None,
                  axis=0,
                  closed=None)

参数

window 它是一个整数、偏移或 BaseIndexer 子类类型的参数。它指定窗口的大小。每个窗口有一个固定的大小。该参数指定用于计算统计的观测值的数量。
min_periods 它是一个整数参数。这个参数指定了一个窗口中的最小观测数。观测数应该有一个值,否则,结果为空值。
center 它是一个布尔参数。它指定在窗口中心设置标签。
win_type 它是一个字符串参数。它指定了窗口的类型。更多信息请点击这里
on 它是一个字符串参数。它指定计算滚动窗口的列名,而不是索引。
axis 它是一个整数或字符串参数。
closed 它是一个字符串参数。它指定了区间闭合。它有四个选项:右、左、都或都不。

返回值

它在执行特定的操作后返回一个窗口。

示例代码:使用 DataFrame.rolling() 方法查找窗口大小为 2 的滚动总和

import pandas as pd

dataframe=pd.DataFrame({'Attendance': {0: 60, 1: 100, 2: 80,3: 78,4: 95},
                        'Obtained Marks': {0: 90, 1: 75, 2: 82, 3: 64, 4: 45}})
print("The Original Data frame is: \n")
print(dataframe)

dataframe1 = dataframe.rolling(2).sum()
print("The Rolling Window After Calculation is: \n")
print(dataframe1)

输出:

The Original Data frame is: 

   Attendance  Obtained Marks
0          60              90
1         100              75
2          80              82
3          78              64
4          95              45
The Rolling Window After Calculation is: 

   Attendance  Obtained Marks
0         NaN             NaN
1       160.0           165.0
2       180.0           157.0
3       158.0           146.0
4       173.0           109.0

函数返回索引轴上的滚动和。请注意,对于索引 0,由于滚动窗口的大小,函数返回了 NaN

示例代码:使用 DataFrame.rolling()方法查找窗口大小为 3 的滚动平均值

import pandas as pd

dataframe=pd.DataFrame({'Attendance': {0: 60, 1: 100, 2: 80,3: 78,4: 95},
                        'Obtained Marks': {0: 90, 1: 75, 2: 82, 3: 64, 4: 45}})
print("The Original Data frame is: \n")
print(dataframe)

dataframe1 = dataframe.rolling(3).mean()
print("The Rolling Window After Calculation is: \n")
print(dataframe1)

输出:

The Original Data frame is: 

   Attendance  Obtained Marks
0          60              90
1         100              75
2          80              82
3          78              64
4          95              45
The Rolling Window After Calculation is: 

   Attendance  Obtained Marks
0         NaN             NaN
1         NaN             NaN
2   80.000000       82.333333
3   86.000000       73.666667
4   84.333333       63.666667

该函数返回了滚动平均值窗口。

相关文章 - Pandas DataFrame