python的rolling_mean()函数

5.1 rolling_mean函数解释

复制代码
pandas.rolling_mean(arg, 
					window, 
					min_periods=None, 
					freq=None, 
					center=False, 
					how=None, **kwargs)

rolling_mean函数表示通过移动窗口求平均值,即用当前值和前[window]个数值取平均数,得到新的数值。

复制代码
import pandas as pd
 
data = [3, 60, 83, 100, 52, 36]#源数据
data = pd.DataFrame(data).sort_values(0)  
w2 = pd.rolling_mean(data, 2)#设置移动窗口为2,即用当前值和前2个数值取平均数
w3 = pd.rolling_mean(data, 3)#用当前值和前3个数值取平均数
print("源数据:\n", data)
print("移动窗口数为2:\n", w2)
print("移动窗口数为3:\n", w3)

结果:
源数据:
      0
0    3
5   36
4   52
1   60
2   83
3  100
移动窗口数为2:
       0
0   NaN
5  19.5
4  44.0
1  56.0
2  71.5
3  91.5
移动窗口数为3:
            0
0        NaN
5        NaN
4  30.333333
1  49.333333
2  65.000000
3  81.000000

rolling的一系列函数中,除了rolling_mean(移动窗口的均值),还有rolling_median(移动窗口的中位数)、rolling_var (移动窗口的方差)、rolling_std (移动窗口的标准差)、rolling_cov (移动窗口的协方差)、rolling_sum (移动窗口的和)、rolling_min (移动窗口的最小值)、rolling_max (移动窗口的最大值)、rolling_corr (移动窗口的相关系数)、rolling_count (计算各个窗口中非NA观测值的数量)。最常用的还是rolling_mean了,作用类似时间序列中提到的移动平滑。

相关推荐
wadesir2 分钟前
Go语言反射之结构体的深比较(详解reflect.DeepEqual在结构体比较中的应用)
开发语言·后端·golang
1024肥宅9 分钟前
手写 Promise:深入理解 JavaScript 异步编程的核心
前端·javascript·promise
你不是我我17 分钟前
【Java 开发日记】我们来说一说 Redis IO 多路复用模型
java·开发语言·redis
想七想八不如1140818 分钟前
408操作系统 PV专题
开发语言·算法
浩瀚地学20 分钟前
【Java】ArrayList
java·开发语言·经验分享·笔记
阿杰同学28 分钟前
Java 设计模式 面试题及答案整理,最新面试题
java·开发语言·设计模式
这样の我28 分钟前
java 模拟chrome指纹 处理tls extension顺序
java·开发语言·chrome
yong999029 分钟前
基于MATLAB的雷达压制干扰仿真
开发语言·matlab
catchadmin41 分钟前
现代高效 PHP 开发的最佳实践
开发语言·后端·php