2017-09-27 1 views
0

동일한 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 
+0

는'시도 집계 (R이 ~ 경도, 데이터 = 안양는, FUN = 평균)의'적용 호출에 모두 넣어. – missuse

답변

0

난 후 하나의 데이터 프레임에 재결합, 각 그룹에 mean을 적용, 위도 BOTH 경도에 의해 분할하고있는 split-apply-combine strategy을 사용하는 것이 좋습니다 것입니다.

나는 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) 
) 
+1

또는 간단히 : 'mydata %> % group_by (lon, lat)'적용 (df [, 4 : 8], 2, 함수 (x) {집계 (x ~ lon, 데이터 = df,) %> % summarise_at (vars (contains ("R")), mean). – Lyngbakr

+0

완벽한, 감사합니다! – heffalump

관련 문제