2012-01-20 3 views
27

목록의 숫자 값을 합하거나 평균을 계산할 수있는 우아한 방법이 궁금합니다. 예 : 숫자 목록 요소 합계 방법

x <- list(a = matrix(c(1,2,3,4), nc=2), b = matrix(1, nc=2, nr=2)) 

x[[1]]+x[[2]] 

또는 평균을 얻으려면 : 당신은 연속적으로 목록의 요소에 바이너리 기능을 적용 할 Reduce을 사용할 수 있습니다

(x[[1]]+x[[2]])/2 
+2

출력물에는 어떤 것이 있습니까? 나는 당신이 묻는 것을 해석 할 수있는 두 가지 방법을 볼 수 있으며, 그들은 다르다. 두 가지 예시 계산의 경우 기대되는 출력을 말하십시오. –

+3

이 예제의 경우, 단지'with (x, a + b)'이지만 많은 요소 나 크기가 다른 요소 나 숫자가 아닌 요소가있는 목록으로 확장되지 않습니다. Gavin이 말한 것처럼 : 당신이하고있는 일에 대해 더 많이 말해주십시오. –

답변

56

.

Reduce("+",x) 
    [,1] [,2] 
[1,] 2 4 
[2,] 3 5 

Reduce("+",x)/length(x) 
    [,1] [,2] 
[1,] 1.0 2.0 
[2,] 1.5 2.5