mean of each column of a cell array that contains cell arrays

3 次查看(过去 30 天)
I have a cell array A(2x82). Cell array A contains in each cell cell arrays of different row sizes but equal column sizes. To be specific the column sizes are always 1.
First I want to combine the two rows of A and then calculate the mean of each column of cell array A. As a result i would get a 1x82 matrix.
Any suggestion? Thanks in advance, Peter
  2 个评论
Walter Roberson
Walter Roberson 2017-12-20
You have a 2 x 82 cell array of column vectors. When you take the mean of each column, I would expect a 2 x 82 numeric result, not a 1 x 82 numeric result.
Peter P
Peter P 2017-12-20
编辑:Peter P 2017-12-20
You are right! I forgot to mention that I want to first combine the two rows of A and then calculate the mean. Any thoughts?

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2017-12-20
cellfun(@mean, A) %provided you want a 2 x 82 numeric result.

更多回答(1 个)

Jos (10584)
Jos (10584) 2017-12-20
Another approach, as all cells contain a column vector:
M = arrayfun(@(k) mean([A(k,1) ; A(k,2)]), 1:size(A,1))
  4 个评论
Walter Roberson
Walter Roberson 2020-4-9
size(A,2) is the size of the second dimension of the array A -- the number of columns. 1:size(A,2) is then a vector of numbers, 1, 2, 3, 4, ... until the number of columns of A

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Structures 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by