具有唯一值

时间:2017-09-27 14:27:03

标签: r dataframe multiple-columns mean

如何计算共享相同lon,lat字段的行的平均R,R1,R2,R3值?我确信这些问题存在多次,但我无法轻易找到它。

   lon       lat      length    depth   R      R1     R2     R3
1 147.5348 -35.32395  13709     1       0.67   0.80   0.84   0.83
2 147.5348 -35.32395  13709     2       0.47   0.48   0.56   0.54
3 147.5348 -35.32395  13709     3       0.43   0.29   0.36   0.34
4 147.4290 -35.27202  12652     1       0.46   0.61   0.60   0.58
5 147.4290 -35.27202  12652     2       0.73   0.96   0.95   0.95
6 147.4290 -35.27202  12652     3       0.77   0.92   0.92   0.91

1 个答案:

答案 0 :(得分:0)

我建议使用split-apply-combine strategy,您可以通过BOTH lon和lat进行拆分,将mean应用于每个组,然后重新组合成一个数据框。

我建议使用dplyr:

library(dplyr)

mydata %>%
   group_by(lon, lat) %>%
   summarize(
       mean_r = mean(R)
     , mean_r1 = mean(R1)
     , mean_r2 = mean(R2)
     , mean_r3 = mean(R3)
  )