how to take the average of a matrix of any size

1 回表示 (過去 30 日間)
lowcalorie
lowcalorie 2012 年 3 月 14 日
How do I compute the mean of all the values in a matrix of any size

回答 (2 件)

Wayne King
Wayne King 2012 年 3 月 14 日
mean()
X = randn(100,100);
mean(mean(X))
or
mean(X(:))
  4 件のコメント
Wayne King
Wayne King 2012 年 3 月 14 日
If you want the means of the columns or the rows, you can use mean() with the dimension argument
X = mean(X,1);
or
X = mean(X,2);
Honglei Chen
Honglei Chen 2012 年 3 月 14 日
Wayne's answer is for matrix of any size. Just try it out.

サインインしてコメントする。


Sean de Wolski
Sean de Wolski 2012 年 3 月 14 日
mean(X(:))
or for speed:
N = numel(X);
sum(reshape(X,N,1))/N;
or for fun:
eval([repmat('mean(',1,ndims(X)) 'X' repmat(')',1,ndims(X)) ';']);
  1 件のコメント
Jan
Jan 2012 年 3 月 15 日
A strange definition of "fun".
I think, that "sum(X(:))/numel(X)" is more fun, it is even _nice_.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeMATLAB についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by