2012-07-12 106 views
4

我有一個函數可以計算矩陣的兩列的平均值。例如,如果下面的矩陣是輸入:只計算列的平均值

inputMatrix = 

       1 2 5 3 9 
       4 6 2 3 2 
       4 4 3 9 1 

...而我的命令是:

outputVector = mean(inputArray(:,1:2)) 

...那麼我的輸出是:

outputVector = 

       3 4 

問題當我的輸入矩陣只包含一行時(即,當它是一個矢量,而不是一個矩陣時)出現。

例如,輸入:

inputMatrix = 

       4 3 7 2 1 

給出的輸出:

outputVector = 

       3.5000 

我想不管有多少行是在輸入被保持相同的行爲。爲了澄清,對第二個例子正確的輸出上面應該是:

outputVector = 

       4 3 

回答

13

使用的MEAN的第二個參數來表示一個維度要平均

inputMatrix =[ 4 3 7 2 1] 

mean(inputMatrix(:,1:2),1) %# average along dim 1, i.e. average all rows 

ans = 

    4  3