python的rolling_mean()函数

打印 上一主题 下一主题

主题 676|帖子 676|积分 2028

5.1 rolling_mean函数解释

  1. pandas.rolling_mean(arg,
  2.                                         window,
  3.                                         min_periods=None,
  4.                                         freq=None,
  5.                                         center=False,
  6.                                         how=None, **kwargs)
复制代码
rolling_mean函数表示通过移动窗口求平均值,即用当前值和前[window]个数值取平均数,得到新的数值。
  1. import pandas as pd
  2. data = [3, 60, 83, 100, 52, 36]#源数据
  3. data = pd.DataFrame(data).sort_values(0)  
  4. w2 = pd.rolling_mean(data, 2)#设置移动窗口为2,即用当前值和前2个数值取平均数
  5. w3 = pd.rolling_mean(data, 3)#用当前值和前3个数值取平均数
  6. print("源数据:\n", data)
  7. print("移动窗口数为2:\n", w2)
  8. print("移动窗口数为3:\n", w3)
  9. 结果:
  10. 源数据:
  11.       0
  12. 0    3
  13. 5   36
  14. 4   52
  15. 1   60
  16. 2   83
  17. 3  100
  18. 移动窗口数为2:
  19.        0
  20. 0   NaN
  21. 5  19.5
  22. 4  44.0
  23. 1  56.0
  24. 2  71.5
  25. 3  91.5
  26. 移动窗口数为3:
  27.             0
  28. 0        NaN
  29. 5        NaN
  30. 4  30.333333
  31. 1  49.333333
  32. 2  65.000000
  33. 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了,作用类似时间序列中提到的移动平滑。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用户云卷云舒

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表