我有数据结构(数据框),其中包含3列,年龄(整数),重量(浮点数)和高度(浮点数),我想计算每个年龄组的平均和中位数体重/身高(例如平均体重) / 10岁时身高,11岁时平均体重/身高,12岁时平均体重/身高等)。想知道是否有参考代码示例?
目前,我正在使用Python numpy / pandas包在R外部执行group-by相似的功能。如果有分组的R内置解决方案,它会很棒。
的问候, 林
答案 0 :(得分:3)
我们可以使用dplyr
library(dplyr)
df1 %>%
group_by(age) %>%
summarise_each(funs(mean))
或data.table
library(data.table)
setDT(df1)[, lapply(.SD, mean), by = age]
或使用aggregate
base R
aggregate(.~age, df1, mean)