# [R] How to get a running mean result by R?

Fri Jun 14 10:38:38 CEST 2013

```Hello,

As for Inf, the mean value of Inf and anything is Inf, so there's no way
to solve it. As for NaN, you can set them to NA prior to calling the
function.
That leaves us with NA handling. forecast::ma handles NAs, it propagates
them, as it should. An alternative function using filter() like it was
proposed would do the same:

ma2 <- function(x, order, sides = 2){
y <- filter(x, rep(1/order, order), method = "convolution", sides = sides)
as.numeric(y)
}

x <- 1:10
x[3] <- NA

ma2(x, 3)
forecast::ma(x, 3)

But if instead of NA the problem value is NaN, I prefer forecast::ma.

x[3] <- NaN

ma2(x, 3)
forecast::ma(x, 3)

Finally, if the value is Inf, both functions work as expected.

x <- 1:10
x[3] <- Inf

ma2(x, 3)
forecast::ma(x, 3)

So I would say that forecast::ma does handle the three cases.

Hope this helps,

Em 14-06-2013 02:50, Jie Tang escreveu:
> yes ,Ma in forecast package does works but when the data included NA,NAN
> or INF ,it could not go on calculating the running
>
>
>
>     Hello,
>
>     You can use, for instance, function ma() in package forecast.
>
>     # if not yet installed
>     #install.packages('forecast', dependencies = TRUE)
>     library(forecast)
>
>     ?ma
>
>
>     Hope this helps,
>
>
>
>     Em 12-06-2013 08:21, Jie Tang escreveu:
>
>         Hi R users:
>             I have a big data and want to calculate the running mean of
>         this data .
>         How can I get this kind of result ? I have check the command "mean"
>         it seems "mean" could not get the running mean?
>
>
>
>
> --
> TANG Jie
> Email: totangjie at gmail.com <mailto:totangjie at gmail.com>
> Tel: 0086-2154896104
> Shanghai Typhoon Institute,China

```