Sum every nth points

前端 未结 9 1107
耶瑟儿~
耶瑟儿~ 2020-11-29 04:42

I have a vector and I need to sum every n numbers and return the results. This is the way I plan on doing it currently. Any better way to do this?



        
9条回答
  •  星月不相逢
    2020-11-29 05:23

    One way is to use rollapply from zoo:

    rollapply(v, width=n, FUN=sum, by=n)
    # [1]  55 155 255 355 455 555 655 755 855 955
    

    And in case length(v) is not a multiple of n:

    v <- 1:92
    
    rollapply(v, width=n, FUN=sum, by=n, partial=T, align="left")
    # [1]  55 155 255 355 455 555 655 755 855 183
    

提交回复
热议问题