2010-07-14 61 views
3

首先,我對壞的描述感到抱歉,但我真的不知道如何更好地解釋它,儘管我想要做的事情非常簡單。將一列的值加總到R的某一行中

實施例: 我具有矩陣

 [,1] 
[1,] 0 
[2,] 1 
[3,] 1 
[4,] 0 
[5,] 1 
[6,] 1 
[7,] 0 
[8,] 0 
[9,] 1 
[10,] 0 

,我想計算的列的每行到該行的列的所有元素的總和。

 [,1] 
[1,] 0 
[2,] 1 
[3,] 2 
[4,] 2 
[5,] 3 
[6,] 4 
[7,] 4 
[8,] 4 
[9,] 5 
[10,] 5 

是我的輸出。

mat = matrix(c(0,1,1,0,1,1,0,0,1,0), ncol=1) 
summed = 0 
sumup = apply(mat, 1, function(x){ 
    summed = summed + x 
    return(summed) 
}) 

以上是我想到的,但它不起作用,因爲我不知道如何處理變量範圍。

任何想法?

回答

6

這應該是你的。

apply(mat, 2, cumsum) 

而且,它應該是一般與任意數量的列

+0

沒關係,這樣更好的回答的基質。這是我不知道R得到的。:) – 2010-07-14 16:38:06

+0

非常感謝。這工作。 – Sebastian 2010-07-14 16:47:57

相關問題