Calculate mean value from different matrices

35 visualizaciones (últimos 30 días)
Mepe
Mepe el 30 de Dic. de 2020
Comentada: Ameer Hamza el 30 de Dic. de 2020
Hi there,
I have 5 different matrices (10x10000), where I want to calculate the mean value of the individual rows column by column, so that the end result is a single 10x10000 matrix. How can I do this most elegantly with the "mean" command?
  1 comentario
Image Analyst
Image Analyst el 30 de Dic. de 2020
How do you end up with the same size result? If you have a 10x10000 matrix, then taking the mean of rows, going across columns, is like this
rowMeans1 = mean(M1, 2); % Result is a 10 x 1 vector.
and the result is a 10 x 1 vector. So if you had 5 or those, even if you stitched them together you'd have a 10x5 matrix.
overallResults = [rowMeans1, rowMeans2, rowMeans3, rowMeans4, rowMeans5]; % 10x5
Or if you went in the other direction
columnMeans1 = mean(M1, 1); % Result is a 1 x 10000 vector.
Stitching together 5 of them would give a 5x10000 matrix.
overallResults = [rowMeans1; rowMeans2; rowMeans3; rowMeans4; rowMeans5]; % 5x10000

Iniciar sesión para comentar.

Respuesta aceptada

Ameer Hamza
Ameer Hamza el 30 de Dic. de 2020
How are 5 matrices available? Is it a cell array? Try something like this
C = {M1, M2, M3, M4, M5};
M = cat(3, C{:});
M_mean = mean(M, 3)
  4 comentarios
Image Analyst
Image Analyst el 30 de Dic. de 2020
Editada: Image Analyst el 30 de Dic. de 2020
Of course creating a cell array is not needed. You could just omit that and do
M = cat(3, M1, M2, M3, M4, M5);
M_mean = mean(M, 3);
Just to clarify Mepe, you're not using "column" in the usual sense of a matrix, as in rows and columns, like everyone else does. This is taking the average of all matching coordinates across 5 different matrices, not column-by-column, hence my question above asking for clarification. Evidently Ameer also has a beta copy of the Mind Reading Toolbox.
Ameer Hamza
Ameer Hamza el 30 de Dic. de 2020
I wish I could subscribe to that toolbox :D . I just guessed based on confusing wording in the question and the intended size of the output matrix.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Operating on Diagonal Matrices en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by