首页 > 解决方案 > 计算均值时何时使用 which vs subset 函数

问题描述

我试图在 R 中按性别查找变量(年龄)的平均值。年龄和性别是数据集中的每一列,我想找到女性和男性的年龄平均值。我相信我需要使用 which 函数,但不确定如何实际执行此操作,并且想知道使用子集函数是否更有意义。

标签: rdataframesubsetmean

解决方案


您可能正在寻找aggregate().

aggregate(age ~ sex, dat, mean)
#   sex  age
# 1   1 24.5
# 2   2 24.0

数据

dat <- structure(list(sex = c(1L, 1L, 1L, 1L, 2L, 2L, 2L), age = c(28L, 
19L, 26L, 25L, 22L, 27L, 23L), x = c(0.978226428385824, 0.117487361654639, 
0.474997081561014, 0.560332746244967, 0.904031387297437, 0.138710167724639, 
0.988891728920862)), class = "data.frame", row.names = c(NA, 
-7L))

推荐阅读