R:是否有“ rowsum”的列版本,但要计算平均值而不是仅求和?

用户名

我有一个矩阵,其中的列根据分组变量进行分组:

x <- matrix(sample(1:10,20,T),ncol=4)
     [,1] [,2] [,3] [,4]
[1,]    7    8    5    3
[2,]    7    5    4    7
[3,]    7    1    9    3
[4,]    4    8    8    8
[5,]    9    9    1    5

group <- sample(1:2, 4, TRUE)
[1] 1 2 1 2

计算按列分组变量分组的每一行的平均值的最优雅方法是什么?所示示例的结果应为5 x 2矩阵:

       1   2
[1,] 6.0 5.5
[2,] 5.5 6.0
[3,] 8.0 2.0
[4,] 6.0 8.0
[5,] 5.0 7.0

我看了看rowsum命令,但这是通过分组变量对行求和,并且没有现成的选项来计算均值。

我将不胜感激任何帮助。

阿克伦

我们可以用split.default一个data.frame由“集团”由列分割,然后做rowMeanslist的data.frames的

sapply(split.default(as.data.frame(x), group), rowMeans)
#      1   2
#[1,] 6.0 5.5
#[2,] 5.5 6.0
#[3,] 8.0 2.0
#[4,] 6.0 8.0
#[5,] 5.0 7.0

数据

x <- structure(c(7, 7, 7, 4, 9, 8, 5, 1, 8, 9, 5, 4, 9, 8, 1, 3, 7, 
       3, 8, 5), .Dim = 5:4)
group <- c(1, 2, 1, 2)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

列中的平均值並通過 javascript 求和所有行的平均值

熊猫计算具有列表而不是单个值的列的平均值

分组并计算平均值,但保留所有列

计算R中各列的移动平均值

计算排除R中某些列的行的平均值

R:计算新列(平均值/中位数)

是否有非 VBA 方法来计算两组列的总和的平均值?

使用具有 3 个分组列的 R 计算平均值

R groupby并计算特殊平均值

R - 计算光栅的平均值

对数据框R中的不同列求和/求平均值

r根据值(不是行数或日期/时间变量)使用窗口计算滚动平均值

Tibco Spotfire - 仅当一列中至少有 3 个值时才计算平均值 - 参见 desc

求和,然后取R中的平均值

Keras如何计算具有相同损失函数的多个输出之间的损失?它是对它们求和还是求平均值?

是否可以让gnuplot从一列中计算平均值?

如何计算前两列具有相同值的多列的平均值?

根据另一列中的其他 ID 计算 R 中列的平均值

如果所有列在 Pandas 中都有值,则计算平均值

计算所有数字列的加权平均值

计算所有科目不同的最后两列的平均值

计算所有列的平均值,然后输出差异

每12小时计算所有列的平均值

计算在python中有重复时间戳的列的平均值?

如何计算R中未对齐的数据帧列的平均值

R - 计算数据框列中值的平均值,循环通过预定的间隔

R-计算从顶行到底行的数据框列的平均值

计算元素在 r 中出现的次数和平均值的列

R:应用函数来计算整个列表中数据框的单个列的平均值