如何在 r 中对列进行平均(附示例)
通常,您可能希望在 R 中对多个列的值进行平均。幸运的是,使用rowMeans()函数可以轻松做到这一点。
本教程展示了此功能实际使用的几个示例。
示例 1:计算所有列的平均值
以下代码显示如何计算数据框中所有列的每行的平均值:
#create data frame data <- data.frame(var1 = c(0, NA, 2, 2, 5), var2 = c(5, 5, 7, 8, 9), var3 = c(2, 7, 9, 9, 7)) #view data frame data var1 var2 var3 1 0 5 2 2 NA 5 7 3 2 7 9 4 2 8 9 5 5 9 7 #find average value in each row rowMeans(data, na.rm= TRUE ) [1] 2.333333 6.000000 6.000000 6.333333 7.000000
结果解释方式如下:
- 第一行的平均值是2.333 。
- 第二行的平均值是6 。
- 第三行的平均值是6 。
- 第四行的平均值是6.333 。
- 第五行的平均值是7 。
您还可以将这些行平均值分配给数据框中的新变量:
#assign row averages to new variable named row_mean data$row_mean <- rowMeans(data, na.rm= TRUE ) #view data frame data var1 var2 var3 row_mean 1 0 5 2 2.333333 2 NA 5 7 6.000000 3 2 7 9 6.000000 4 2 8 9 6.333333 5 5 9 7 7.000000
示例 2:查找特定列的平均值
也可以仅找到数据框特定列的平均值。例如,以下代码显示如何仅计算前两列的行平均值:
#find row averages across first two columns data$new <- rowMeans(data[, c(1,2)], na.rm= TRUE ) #view data frame data var1 var2 var3 new 1 0 5 2 2.5 2 NA 5 7 5.0 3 2 7 9 4.5 4 2 8 9 5.0 5 5 9 7 7.0
我们可以看到这个:
- 第一行前两列的平均值为2.5 。
- 第二行前两列的平均值是5 。
等等。
您可以使用类似的语法来查找任何列集的行平均值。例如,以下代码显示如何仅计算第一列和第三列的行平均值:
#find row averages across first and third columns data$new <- rowMeans(data[, c(1,3)], na.rm= TRUE ) #view data frame data var1 var2 var3 new 1 0 5 2 1.0 2 NA 5 7 7.0 3 2 7 9 5.5 4 2 8 9 5.5 5 5 9 7 6.0
我们可以看到这个:
- 第一行第一列和第三列的平均值为1 。
- 第二行第一列和第三列的平均值是7 。
等等。
您可以在此处找到更多 R 教程。