Python3:pandas中的移动窗口函数rolling的用法

1.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,依次类推…

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等的函数应用方法同上

  • 7
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值