仅计算列的平均值

时间:2012-07-12 11:36:15

标签: matlab mean

我有一个函数来计算矩阵的两列的平均值。例如,如果以下矩阵是输入:

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

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:5)

mean(blah, 1)

请参阅文档:http://www.mathworks.co.uk/help/techdoc/ref/mean.html