5

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

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
4

2 回答 2

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
于 2012-07-12T11:38:50.857 回答
5
mean(blah, 1)

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

于 2012-07-12T11:39:04.793 回答