# Moving average of an EMG

### Description

Smooths an EMG by taking local averages.

### Usage

1 | ```
movingaverage(data, channel, wsize, units = c("samples", "time"), data.name)
``` |

### Arguments

`data` |
an ‘emg’ object, usually rectified. |

`channel` |
in case of multi-channel data, |

`wsize, units` |
determines the length of the moving window that is used to calculate the local averages of the data. |

`data.name` |
a string specifying the name of the variable which will appears on the plots. If empty or not provided is taken from the object given as |

### Details

The moving average is a running average computed over a moving window over the length of the EMG. Usually, the EMG signal is first rectified due that, generally, the mean value of an EMG signal is zero.

The window length is the double of the value of `wsize`

in samples. The `units`

of the window size could be in number of samples ("samples") or in seconds ("time").

### Value

An ‘emg’ object containing the moving-averaged EMG.

### Author(s)

J.E. Macias-Diaz, J.A. Guerrero jaguerrero@correo.uaa.mx

### References

Konrad P. (2005) The ABC of EMG: A Practical Introduction to Kinesiological Electromyography. Version 1.0, Noraxon INC. USA.

### See Also

`rectification`

, `filter`

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | ```
# change graphical parameters to show multiple plots
op <- par(mfrow = c(2, 1))
# Simulate 5 seconds of an EMG
emgx <- syntheticemg(n.length.out = 5000, on.sd = 1, on.duration.mean = 350,
on.duration.sd = 10, off.sd = 0.05, off.duration.mean = 300, off.duration.sd = 20,
on.mode.pos = 0.75, shape.factor = 0.5, samplingrate = 1000, units = "mV",
data.name = "Synthetic EMG")
plot(emgx, main = "Synthetic EMG")
# Compute the moving average of the rectified EMG
emgr <- rectification(emgx, rtype = "fullwave")
emgma <- movingaverage(emgr, wsize = 30, units = "samples")
plot(emgma, main = "Moving average of the rectified EMG")
# reset graphical parameters
par(op)
``` |