rolling.count()
rolling.count()
:窗口内任何非NaN观测值的滚动计数。
import pandas as pd
import numpy as np
s = pd.Series([2, 3, np.nan, 10,3,4,6,9])
s1 = s.rolling(4).count()
print(s1)
[OUT]:
0 1.0
1 2.0
2 2.0
3 3.0
4 3.0
5 3.0
6 4.0
7 4.0
dtype: float64
为了提升数据的准确性,将某个点的取值扩大到包含这个点的一段区间,用区间来进行判断,这个区间就是窗口。移动窗口就是窗口向一端滑行,默认是从右往左,每次滑行并不是区间整块的滑行,而是一个单位一个单位的滑行。上面的例子可以看出,前两个值都是非NAN值,计数为2,第三个值为空,所以加上第三个单位后计数仍未2,依次类推…
rolling.sum()
rolling.sum()
:计算移动窗口的和。
import pandas as pd
import numpy as np
s = pd.Series([2, 3, 4, 10,3,4,6,9])
s1 = s.rolling(5).sum()
print(s1)
[OUT]:
0 NaN
1 NaN
2 NaN
3 NaN
4 22.0
5 24.0
6 27.0
7 32.0
dtype: float64
首先我们设置的窗口window=5,也就是5个数取一个和。index 0,1 ,2,3为NaN,是因为它们前面都不够5个数。等到index4 的时候,它的值是怎么算的呢,index4 = index0+index1+index2+index3+index4
3. rolling.mean()
:计算移动窗口的均值
4. rolling.median()
:计算移动窗口的中位数
5. rolling.var()
:移动窗口的方差
6. rolling.corr
:移动窗口的相关系数
还有方差var,标准差std,协方差cov,最大值max,最小值min等的函数应用方法同上