首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何利用R按3列的顺序计算矩阵中的行均值

如何利用R按3列的顺序计算矩阵中的行均值
EN

Stack Overflow用户
提问于 2017-10-19 19:03:12
回答 1查看 34关注 0票数 1

我有一个维数为100x300的矩阵,其中我想通过平均每3列,即1-3列,将列的数量300减少到100列,成为新的列1,4-6列变成新的列2,等等。所以我的100x300矩阵变成了100x100矩阵。

矩阵有点像

代码语言:javascript
复制
A <- matrix(rexp(30000, rate=.1), ncol=300)

我尝试过这样的rowMeans(A, 3),不幸的是无法工作。如有任何指导,将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-19 19:24:38

下面是一个将9列平均为3列的示例

代码语言:javascript
复制
#DATA
set.seed(42)
m = matrix(rnorm(90), ncol = 9)

sapply(split(sequence(NCOL(m)), ceiling(sequence(NCOL(m))/3)), function(i) rowMeans(m[,i]))
#                1          2           3
# [1,]  0.78972984  0.3277913  0.03411781
# [2,] -0.01978707 -0.1466863  0.11765521
# [3,] -0.39921655  1.1229981  0.43126071
# [4,]  0.52291618 -0.2309106  0.10843898
# [5,]  0.72204682 -0.2578551 -0.82148326
# [6,]  0.03311892 -0.3358800  0.83184534
# [7,]  0.32333323 -0.3055211  0.29562900
# [8,] -1.50475918  0.2276755  0.43983899
# [9,]  0.01268471 -1.9462480  0.32276620
#[10,]  0.20580146  0.3255511  0.14762346
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46837073

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档