【发布时间】:2017-11-18 09:09:59
【问题描述】:
我有一个 30 行的矩阵:
set.seed(1234)
m = matrix(rnorm(300), 0)
我想计算每五个连续行的 colMeans。 例如:
colMeans 行 1,2,3,4,5
colMeans 2,3,4,5,6 行
colMeans 第 3、4、5、6、7 行
...
colMeans 16,17,18,19,20 行
我该怎么做?
【问题讨论】:
我有一个 30 行的矩阵:
set.seed(1234)
m = matrix(rnorm(300), 0)
我想计算每五个连续行的 colMeans。 例如:
colMeans 行 1,2,3,4,5
colMeans 2,3,4,5,6 行
colMeans 第 3、4、5、6、7 行
...
colMeans 16,17,18,19,20 行
我该怎么做?
【问题讨论】:
zoo 包中的函数在这里很有用。试试
set.seed(1234)
m = matrix(rnorm(300), nrow = 30)
zoo::rollmean(m, 5) # option 1
zoo::rollapply(m, 5, mean) # option 2
【讨论】: