R 如何总结类似的行?

R 如何总结类似的行?,r,R,我想计算所有年龄的m的平均值和所有年龄的f的平均值,然后从原始值中减去它 data <- data.frame(height=c(96,72,100,45),age=c(1,2,1,2),sex=c("m","f","f","m")) data height age sex 1 96 1 m 2 72 2 f 3 100 1 f 4 45 2 m 在dplyr中使用分组非常简单: library(dplyr) dat

我想计算所有年龄的m的平均值和所有年龄的f的平均值,然后从原始值中减去它

data <- data.frame(height=c(96,72,100,45),age=c(1,2,1,2),sex=c("m","f","f","m"))
data
    height age sex
1     96   1   m
2     72   2   f
3    100   1   f
4     45   2   m
在dplyr中使用分组非常简单:

library(dplyr)

data %>% 
  group_by(sex) %>% 
  mutate(mean = mean(height),
         dif = height - mean)

你的dif值对于男性来说似乎是错误的。你做过任何搜索吗??你可以简单地通过搜索来找到答案。。。不管怎样,你都可以得到m的平均值,例如,通过做`meandata$height[data$sex==m]
library(dplyr)

data %>% 
  group_by(sex) %>% 
  mutate(mean = mean(height),
         dif = height - mean)
Source: local data frame [4 x 5]
Groups: sex [2]

  height   age    sex  mean   dif
   <dbl> <dbl> <fctr> <dbl> <dbl>
1     96     1      m  70.5  25.5
2     72     2      f  86.0 -14.0
3    100     1      f  86.0  14.0
4     45     2      m  70.5 -25.5