moving_average

Die Funktion moving_average berechnet einen gleitenden Mittelwert für das gegebene Signal. Die Funktion kann zum Glätten eines Signals verwendet werden.

rvMean = moving_average(rvY, nNeighbor)

Returnwert

rvMean ist das geglättete Signal. Das Signal hat die gleiche Länge wie rvY. Am Anfang und Ende des Signals werden entsprechend weniger Datenpunkte bei der Mittelwertbildung berücksichtigt.

Parameter

rvY

rvY ist das zu glättende Signal.

nNeighbor

nNeighbor ist die halbe Fensterbreite. Die gesamte Fensterbreite ist nNeighbor * 2 + 1.

Beispiel

x = linspace(0, 2*PI, 1000)
y = sin(x) + rand(1, 1000) * 0.1
yy = moving_average(y, 10);
h = plot(x, y);
XYSetProps(h[3], "curve_color = 'blue'");
h = plot(x, yy, h[2]);
XYSetProps(h[3], "curve_color = 'red'");
* moving_average([1,2,3,4,5,6], 1)
   1.5000
   2.0000
   3.0000
   4.0000
   5.0000
   5.5000

History

Version Beschreibung
5.2.0 Neu.

id-1189333