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,

Rui Barradas

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


2013/6/12 Rui Barradas <ruipbarra...@sapo.pt <mailto:ruipbarra...@sapo.pt>>

    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,

    Rui Barradas


    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: totang...@gmail.com <mailto:totang...@gmail.com>
Tel: 0086-2154896104
Shanghai Typhoon Institute,China

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to