python列表中的数据求平均数,python中如何算列表中数的平均值
计算机编程语言中的滑动平均算法(移动平均线)方案:
#!/usr/敏感串行/env python
#-* -编码:utf-8-* -
导入编号为公证人
与矩阵实验室中的光滑的函数相同,但平滑窗口必须为奇数。
# YY=smooth(y)smoothsthedatainthecolumnvctive .
# thefirstfewelementsofyyaregivenby
#YY(1)=y(1)))))))))))。
#YY(2)=) y )1) y )2) y )3)/3
#YY(3)=) y )1) y )2) y )3) y )4) y )5)
#YY(4)=) y )2) y )3) y )4) y )5) y )6)/5
# .
defsmooth(a,WSZ):
# a:原始数据,numpy 1-darraycontainingthedatatobesmoothed
#必须是一维。否则,请使用网络旅游(或np。挤压)转换
# wsz : smoothingwindowsizeneeds,必须是奇数,
# asinetoriginalmatlabimplementation
out0=NP.convolve(a,NP.ones ) wsz,dtype=int), valid )/WSZ
r=NP.arange(1,wsz-1,2))))。
start=NP。cumsum(a[:wsz-1])336033602)/r
stop=(NP。cumsum(a[:-wsz:-1])3360:2)/r)[:-1]
returnNP.concatenate((start,out0,stop))
#另一个,边缘处理不好
""
defmovingaverage(data,window_size):
窗口=NP。ones(int(window _ size))/float(window _ size)).
returnNP.convolve(data,window, same )。
""
#另一个,快一点
#输出结果与原始数据的长度不同,如果原始数据为m,平滑步为t,则输出数据为m-t 1
""
defmovingaverage(data,window_size):
cumsum _ vec=NP。累计(NP。insert(data,0,0))
ma _ vec=(cumsum _ vec [窗口大小:]-累计和向量[:-窗口大小])/窗口大小
返回移动矢量
""
以上计算机编程语言实现"滑动平均"的例子,就是编辑分享给大家的所有内容。希望您能参考。另外,我想支持脚本屋。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。