Python实现“滑动平均”的代码教程:
#! /usr/mrdxxm/env python
#-* -编码: utf-8-* -
导入编号为NP
与MATLAB中的smooth函数相同,但平滑窗口必须为奇数。
#YY=smooth(y ) smoothsthedatainthecolumnvectory .
# 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)/5
#YY(4)=) y )2) y )3) y )4) y )5) y )6)/5
# .
defsmooth(a,WSZ ) :
# a:原始数据,numpy1- darraycontainingthedatatobesmoothed
#必须是1-D。 否则,请使用np.ravel (或np.squeeze )转换
# wsz : smoothingwindowsizeneeds,which must be odd number,
# asintheoriginalmatlabimplementation
out0=NP.convolve(a,NP.ones ) wsz,dtype=int ),' valid ' )/WSZ
r=NP.arange(1,wsz-1,2 ) ) ) ) )。